在http中,put被定义为幂等的方法,post不是幂等的方法。

  幂等:数学中的一个术语,对于单个输入或者无输入的运算方法,如果每次都是同样的结果,则是幂等的。也就是说,如果一个网络重复执行多次,产生的效果是一样的,那就是幂等。

 

  post

    用于提交请求,可以更新或者创建资源,是非幂等的

    在用户注册时,每次提交都是创建一个用户账号,此时用post

  put

    用于向指定的url传送更新资源,是幂等的

    还是用户模块,比如修改密码,虽然提交的还是账户名和密码,但是每次提交都只是更新该用户密码,每次请求都只是覆盖原型的值,此时用put

  用post还是put

    如果该更新对应的url多次调用的结果一致,用put

    如果每次提交相同的内容,最终结果不一致,用post