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的幂等性,如果按照这个理解,那么如果你第一次删除,那么数据的状态在服务器没有了。第二次再次删除,服务器上的数据还是没有的,这个数据的状态相对于服务器是不存在的,数据是一个对象,那么对象的每一个属性之间都是不存在。状态就是没有。所以是状态统一
  • 相关阅读:
    netcore一键部署到linux服务器以服务方式后台运行
    查找100-999之间的水仙花数
    shell创建数据库的脚本
    python打印九九乘法表的菱形实现
    c++一些重要的细节
    MySQL数据库基础学习笔记(二)
    MySQL数据库基础学习笔记(一)
    react-redux 的基本使用
    react-router-dom基本使用+3种传参方式
    从create-react-app 项目搭建开始
  • 原文地址:https://www.cnblogs.com/or2-/p/5245768.html
Copyright © 2011-2022 走看看