zoukankan      html  css  js  c++  java
  • HTTP协议中PUT和POST使用区别

    这俩个方法初看一下好像都是更新资源,但是有本质上的区别,那就是语义。在HTTP中,PUT被定义为幂等(idempotent)的方法,POST则不是,这是一个很重要的区别。

    首先解释幂等,幂等是数学的一个用语,对于单个输入或者无输入的运算方法,如果每次都是同样的结果,则称其是幂等的。也就是说,如果一个网络重复执行多次,产生的效果是一样的,那就是幂等(idempotent)。

    POST

    用于提交请求,可以更新或者创建资源,是非幂等的,举个例子:
    在用户注册功能上,每次提交都是创建一个用户账号,这个时候就用POST。
    ESTful URL地址应为:/user/creation?user_name=&pwd=

    PUT

    用于向指定URL传送更新资源,是幂等的。
    还是用户模块,比如修改用户密码,虽然提交的还是账户名跟用户密码这个俩个必填参数,但是每次提交都只是更新该用户密码,每次请求都只是覆盖原先的值。此时就该用PUT。
    ESTful URL地址应为:/user/{user_id}/modify?pwd=**

    用PUT还是POST

    当需要以更新的形式来修改某一具体资源的时候,如何判断用PUT还是POST呢?
    很简单,如果该更新对应的URI多次调用的结果一致,则PUT。如果每次提交相同的内容,最终结果不一致的时候,用POST。

  • 相关阅读:
    CSS——before和after伪元素
    CSS——滑动门技术及应用
    CSS案例3(在线教育网站)
    CSS——背景渐变
    CSS字体图标
    CSS——精灵技术
    CSS——溢出文字隐藏
    Intellij IDEA -01 如何配置项目!
    Intellij Idea -02 如何将项目工程横向排列变成纵向排列
    java8 --新特性汇总
  • 原文地址:https://www.cnblogs.com/liujie-php/p/13913147.html
Copyright © 2011-2022 走看看