zoukankan      html  css  js  c++  java
  • 我对REST的理解

         REST风格的Web Service的特点:
    1.     Client-Server:采用基于pull的交互风格,将客户端与服务器端分开,将用户界面与数据存储分开。
    2.     无状态:每一个从客户端向服务器端发出的请求都必须包含所有必要的信息,以使服务器能理解客户的请求,而无须利用服务器端预存的环境信息
    3.     缓存:为了改进网络效率,来自服务器端的响应必须能够被标记为是否可以缓存
    4.     统一界面:所有的资源都是经由通用的界面访问,例如HTTP GET, POST, PUT, DELETE)。
    5.     命名资源:系统由一系列以URL命名的资源组成。
    6.     资源互联:从而客户可以通过URL的链接从一个状态转移到另一个状态。
    7.     分层组件:在客户与资源之间可以加入proxy server、 cache server、 gateways等等中间件,从而满足性能、安全性等非功能需求。

         在设计REST风格的Web Service时,需要遵循以下原则:
    1. 创建REST风格Web Service的关键是识别出所有可能暴露为服务的概念实体,例如元件的清单、元件的详细信息。
    2. 为每个资源定义一个URL。资源应该是名词,而非动词,例如不要使用如下风格的URL: http://www.parts-depot.com/parts/getPart?id=00345
    而是使用:
    http://www.parts-depot.com/parts/00345
    3. 根据资源的CRUD特性以及是否需要展示给客户,将各种资源进行分类。对于前者,使用HTTP POST, PUT,或 DELETE访问资源,对于后者则通过HTTP GET访问。
    4. 所有经由HTTP GET访问的资源都应是没有负面影响的,即,对这些资源的调用不会导致资源的更新。
    5. 每一个资源都不应孤立地展示出来,而需要包含能够获取相关资源的链接。
    6. 提供指向更详细信息的链接,循序渐进地展示数据,不要试图在一个响应文档中表现所有东西。
    7. 使用schema定义响应数据的格式,例如DTD, W3C Schema, RelaxNG, 或者Schematron。对于需要POST或PUT的服务,也同样提供一个统一的响应格式。
    8. 利用WSDL文档或者一个简单的HTML页面说明如何访问这些服务。
  • 相关阅读:
    Loadrunner系列学习--Loadrunner架构(1)
    Loadrunner学习---脚本编写(1)
    loadrunner学习系列---脚本编写(2)
    LoadRunner学习---脚本编写(4)(比较重要)
    LoadRunner内部结构(1)
    pat 1142
    pat 1025
    pat 1140
    c/c++ 常用函数/方法
    pat 1136
  • 原文地址:https://www.cnblogs.com/tianxin2001x/p/1311047.html
Copyright © 2011-2022 走看看