RESTful Web Services Cookbook-改善

2016-03-29  本文已影响71人  daoyidao

使用统一接口

HTTP是一种应用层协议,然而,包括SOAP和一些Ajax Web框架在内的不少技术都将HTTP作为一种传输信息协议,这种方法很难充分利用HTTP层的基础设施。

1.1如何保持交互的可见性

作为应用协议,HTTP的设计目标是在客户端和服务器之间保持对库、服务器、代理、缓存、和其他工具的可见性。

识别设计资源,就可以使用GET方法获取资源表示,使用PUT方法更新资源,使用DELETE方法删除资源,使用POST方法执行各种不安全和非等幂的操作;添加适当的HTTP表头来描述请求和响应。

保持请求和响应的可见性,可以具备以下特性:

可见性的实现:

1.2何时需权衡可见性

有多个共享数据的资源,或一个操作要修改多个资源,可考虑降低可见性。得到更好的信息抽象、松散的耦合度、更好的网络效率、更好的资源粒度。

1.3如何维护应用程序状态

在客户端保存应用程序的状态

资源表述中的链接是保持应用程序状态的最后地方。

1.4如何在服务器端实现安全和幂等的方法

方法 安全 幂等
GET YES YES
HEAD YES YES
OPTIONS YES YES
PUT NO YES
DELETE NO YES
POST NO NO

1.5如何在客户端处理安全和幂等方法

1.6何时使用GET方法

1.7何时使用POST

1.8如何使用POST方法创建资源

POST方法的应用场合之一是创建新资源,该协议类似使用“工厂方法模式”创建新对象。

上一篇下一篇

猜你喜欢

热点阅读