zoukankan      html  css  js  c++  java
  • restful api设计中的幂等性的理解。

    以前就听说过这个词,但是最近看了一些文章,产生了一些疑惑,

     

    GET是幂等性。
    例如查一条数据,如果你给定一个id.那么你查多少次。都是这条数据,但是我疑问,这里的幂等性指的是,每次都返回一条。这个数量,还是说每次都返回同样一条数据(数据内容)



    DELETE是幂等性
    你第一次删除数据,是删除掉。这个副作用是删除了给定id的数据,服务端数据状态发生了改变。但是你二次再删除,数据是没有的,你没删除掉。这里的幂等性如何理解,状态的改变是相对于谁的改变


    看了这篇文章 http://www.oschina.net/translate/put-or-post?p=1#comments


    文章中幂等性,翻译成状态统一性,目前觉得最好的翻译


    如果按照这个理解,那么get的幂等性应该理解成数据状态之间的统一,


      例如:一个对象例如有 name,age属性,这些属性之间根据业务规定,他们的状态要统一:

        1操作统一: 简单理解可以是要修改同时两个属性被修改,而且同时被一个请求修改
        2 业务状态统一:根据业务上要求,就是例如name是李四的,年龄不能超过20岁,这两个状态要一致



    delete的幂等性,如果按照这个理解,那么如果你第一次删除,那么数据的状态在服务器没有了。第二次再次删除,服务器上的数据还是没有的,这个数据的状态相对于服务器是不存在的,数据是一个对象,那么对象的每一个属性之间都是不存在。状态就是没有。所以是状态统一
  • 相关阅读:
    LaTeX —— 特殊符号与数学字体
    LaTeX —— 特殊符号与数学字体
    实战caffe多标签分类——汽车品牌与车辆外观(C++接口)[详细实现+数据集]
    家书与家训
    家书与家训
    Handler总结
    (step5.1.3)hdu 1213( How Many Tables——1213)
    JavaScript+XML+VBA导出报表初步构想
    XML学习总结
    JSP 9 大内置对象详解
  • 原文地址:https://www.cnblogs.com/or2-/p/5245768.html
Copyright © 2011-2022 走看看