zoukankan      html  css  js  c++  java
  • REST之若只如初见

    前言:目前大多数web应用服务都有采用REST,这里贴一点REST基础。

    (1)REST的风格
    REST 要求开发人员显式地使用 HTTP 方法,并且使用方式与协议定义一致。这个基本 REST 设计原则建立了创建、读取、更新和删除(create, read,

    update, and delete,CRUD)操作与 HTTP 方法之间的一对一映射。根据此映射:
      若要在服务器上创建资源,应该使用 POST 方法。
      若要检索某个资源,应该使用 GET 方法。
      若要更改资源状态或对其进行更新,应该使用 PUT 方法。
     若要删除某个资源,应该使用 DELETE 方法。
    (2)方法使用原则
    作为一般设计原则,通过在 URI 中使用名词而不是动词,对于遵循有关显式使用 HTTP 方法的 REST 指导原则是有帮助的。在基于 REST 的 Web 服务中,协

    议已经对动词(POST、GET、PUT 和 DELETE)进行了定义。在理想的情况下,为了保持接口的通用化,并允许客户端明确它们调用的操作,Web 服务不应该定

    义更多的动词或远程过程,例如 /adduser 或 /updateuser。这条通用设计原则也适用于 HTTP 请求的正文,后者旨在用于传输资源状态,而不是用于携带要

    调用的远程方法或远程过程的名称。
    (3)服务无状态
    客户端应用程序与服务之间的这种协作对于基于 REST 的 Web 服务中的无状态性极为重要。允许对同一个资源进行多种操作。
    (4)URI 的模式
    http://www.myservice.org/discussion/{year}/{day}/{month}/{topic}
    在考虑基于 REST 的 Web 服务的 URI 结构时,需要指出的一些附加指导原则包括:
    隐藏服务器端脚本技术文件扩展名(.jsp、.php、.asp)——如果有的话,以便您能够移植到其他脚本技术而不用更改 URI。
    (5)Rest使用基于MIME
      MIME-Type Content-Type
       JSON     application/json
       XML      application/xml
       XHTML    application/xhtml+xml
    (6)REST应用知道
    REST 并非始终是正确的选择。它作为一种设计 Web 服务的方法而变得流行,这种方法对专有中间件(例如某个应用程序服务器)的依赖比基于 SOAP 和 WSDL

    的方法更少。在某种意义上,通过强调 URI 和 HTTP 等早期 Internet 标准,REST 是对大型应用程序服务器时代之前的 Web 方式的回归。正如您已经在所谓

    的基于 REST 的接口设计原则中研究过的一样,XML over HTTP 是一个功能强大的接口,允许内部应用程序(例如基于 Asynchronous JavaScript + XML

    (Ajax) 的自定义用户界面)轻松连接、定位和使用资源。事实上,Ajax 与 REST 之间的完美配合已增加了当今人们对 REST 的注意力。
    通过基于 REST 的 API 公开系统资源是一种灵活的方法,可以为不同种类的应用程序提供以标准方式格式化的数据。它可以帮助满足集成需求(这对于构建可

    在其中容易地组合 (Mashup) 数据的系统非常关键),并帮助将基于 REST 的基本服务集扩展或构建为更大的集合。

    本文来自编程入门网:http://www.bianceng.cn/Programming/extra/201203/33711_5.htm

  • 相关阅读:
    Minimum Depth of Binary Tree leetcode java
    Maximum Depth of Binary Tree leetcode java
    Symmetric Tree leetcode java
    Same Tree leetcode java
    Binary Tree Postorder Traversal leetcode java
    Binary Tree Preorder Traversal leetcode java
    Binary Tree Inorder Traversal leetcode java
    Combinations leetcode java
    一键清除Centos iptables 防火墙所有规则
    阿里云centos7.7x64安装open,并配置ip转发和nat伪装
  • 原文地址:https://www.cnblogs.com/boonya/p/2554181.html
Copyright © 2011-2022 走看看