REST的中文译名:表述性状态转移。我们把representation翻译为表述,而不是常见的表现,representational也因此翻译
为表述性的。这样做是为了突出HTTP协议的对话特色。
HTTP就是有意设计为好像是两个人在对话:
GET /weather/bejing/2010/9/10 ......
张三:告诉我北京2010年9月10日这天的天气
200 OK ......
李四:北京2010年9月10日的天气是......
在REST中客户端和服务器端是松散耦合的,客户端永远不直接操作服务器端的资源,而是通过获得和发送对资源的某种表述,来间接修改资源的状态,达到操
作资源的目的。“表述”就是对资源的一段描述,而“表现”的含义不大确切。
我们把transfer翻译为转移,而不是常见的迁移或者更糟糕的传输。transfer在REST中有3个含义:
1. 资源的状态通过资源的表述(可以有html/xml/json/text等不同的形式)在客户端和服务器端转移。
2. 通过含有超链接(资源的标识)的超文本的驱动,使得Web应用从一个资源的某个状态转移到另一个资源的某个状态。
3. 绝对不能将transfer翻译为传输,Fielding在其博士论文中说的很清楚: “HTTP并不是被设计为一种传输协议
(transport protocol),它是一种转移协议(transfer protocol)。
representation和transfer这两个词在REST中有特殊含义,翻译与REST和HTTP相关的技术文档时必须要特别注意。我们将这
两个词分别翻译为“表述”和“转移”。虽然有不同意见,但是我仍然认为我们以前的翻译很准确。