• 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的幂等性,如果按照这个理解,那么如果你第一次删除,那么数据的状态在服务器没有了。第二次再次删除,服务器上的数据还是没有的,这个数据的状态相对于服务器是不存在的,数据是一个对象,那么对象的每一个属性之间都是不存在。状态就是没有。所以是状态统一
  • 相关阅读:
    eclipse中SVN分支合并到主干
    Nginx+Php-fpm+MySQL+Redis源代码编译安装指南
    php-fpm的重启/关闭
    修改PHP上传文件大小限制的方法
    【转】Android AlertDialog自定义布局
    unity 多线程
    今天无意中发现的WWW.threadPriority
    Socket.IO for Unity 简要介绍
    shader一般都是用工具调试的
    METAL渲染是什么?
  • 原文地址:https://www.cnblogs.com/or2-/p/5245768.html
Copyright © 2020-2023  润新知