一起来学REST(5)——REST服务器响应

来源:互联网 发布:c语言 volatile 含义 编辑:程序博客网 时间:2024/05/16 01:34
 原文地址:http://rest.elkstein.org/

Learn REST: A Tutorial

A fast-training course for REST - Representational State Transfer, a new approach to systems architecture and a lightweight alternative to web services

REST——表示性状态转移——快速学习教程,一种新的系统架构方法,可以替代Web Service的轻量级协议。

_______________________________________________________________________________________

REST中,服务器的相应通常是一个XML文件,例如:

<parts-list> <part id="3322">  <name>ACME Boomerang</name>  <desc>   Used by Coyote in <i>Zoom at the Top</i>, 1962  </desc>  <price currency="usd" quantity="1">17.32</price>  <uri>http://www.acme.com/parts/3322</uri> </part> <part id="783">  <name>ACME Dehydrated Boulders</name>  <desc>   Used by Coyote in <i>Scrambled Aches</i>, 1957  </desc>  <price currency="usd" quantity="pack">19.95</price>  <uri>http://www.acme.com/parts/783</uri> </part></parts-list>

不过,也可以使用其他的格式。与SOAP服务不同之处在于,REST并没有与XML进行绑定。REST可以采用的格式可能有CSV(comma-separated values)和JSON (JavaScript Object Notation).

每种格式都有自己的优缺点。XML易于扩展(客户端需要忽略不熟悉的域)并且是类型安全的;CSV更为紧凑;JSON易于JavaScript客户端处理(也易于其他语言处理)。

除非在非常特殊的情况下,否则REST不支持HTML以及其他诸如对人类理解有意义的格式、或客户端不易于处理的格式。那么,特殊的情况当然是指,REST服务要求返回人类可读的文档、或查看整个WWW。实际上,我们发现HTML是最为常用的RESE响应格式…….