您的位置:首页 > 其它

JAX-RS入门 十一:HATEOAS

2013-12-16 22:03 274 查看
HATEOAS全称:超媒体即状态应用引擎 (Hypermedia As The Engine Of Application State)。

一、Atom Links

RESTful使用Atom Syndication Format来实现HATEOAS。Atom Links 也是一种xml元素结构,例如:

Xml代码



<customers>

<strong><link rel="next"

href="http://example.com/customers?start=2&size=2"

type="application/xml"/></strong>

<customer id="123">

<name>Bill Burke</name>

</customer>

<customer id="332">

<name>Roy Fielding</name>

</customer>

</customers>

其中:

rel属性

链接的简单说明和文本显示,也标明了此链接的意义,例如上面标明链接到下一页(或下一个其他的东西),等同于html中<a>元素上的标签
href属性

链接到的地址
type属性

定义交换数据类型
hreflang属性

定义交换数据类型的语种,例如法语、英语、德语等等(上面例子中未介绍)

当客户端收到一个返回的信息中嵌有Atom links,它就去查找它感兴趣的链接,然后调用它。

二、在WebServices中使用HATEOAS的优势

位置透明

用户只需要知道逻辑的链接名,而不需要知道具体的url

解耦合交易的信息

不把用户需要访问的url地址位置固定,而是通过请求返回,则服务器端可以自由的修改逻辑了更新uri而不影响客户端

减少状态交换的错误
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: