REST教程九:REST设计指南

来源:互联网 发布:淘宝怎么卡地区 编辑:程序博客网 时间:2024/06/09 13:13
设计一个REST架构一些软件准则:

   1.  不要使用“物理”的URLs一些物理URL指向具体的内容,例如一个XML文件http://www.acme.com/inventory/product003.xml而逻辑URL并不会意味着一个物理文件,例如http://www.acme.com/inventory/product/003
        当然,即使有.xml扩展名,内容也是动态生成的它应该是人类易于识别的逻辑的urls,而不是物理urls
    2. 查询不应该返回一个超负荷数据如果需要,可以提供分页机制例如“产品清单GET请求应该返回第n个产品(例如,第10,同时带有下/上翻页的链接
    3. REST响应即便可以是任何东西也请确保它是有据可查的确保他不会改变哪怕一点点输出格式(因为改变会现有的客户端造成破坏
        记住即使人类可读的输出但你客户不是人类用户
        如果输出在XML中确保将它保存在schema模式或DTD文件中
    4. 不要客户端构建额外的动作URL包括REST响应实际url例如对“产品清单”的请求可以返回每个产品ID规范说,你应该使用http://www.acme.com/product/PRODUCT_ID得到更多的细节这是一种很糟糕设计相反,好的设计中,响应应包括每个产品实际url地址http://www.acme.com/product/001263等。
        按照这种设计思路,意味着输出会较大但是,这也意味着您可以轻松地直接新得到的URL进行按需操作而不需要改变客户端代码
    5. GET访问请求,不应该引起服务器任何的状态改变。任何服务器状态的改变都应该是一个POST请求(其他HTTP动词如DELETE)造成的

原创粉丝点击