发布于 2015-08-12 14:13:51 | 333 次阅读 | 评论: 0 | 来源: 网络整理
按照REST架构,一个RESTful Web服务不应该继续服务器的客户端的状态。这种限制被称为无状态。它负责客户以它的上下文传递给服务器,然后服务器可以存储这样的上下文,以处理客户端的进一步请求。例如,通过会话服务器维护标识由客户端传递会话标识符。
RESTful Web服务应遵守此限制。我们已经看到了REST Web服务 - 方法教程,该Web服务方法不存储它们从调用的客户端的任何信息。
考虑以下网址:
http://localhost:8080/UserManagement/rest/UserService/users/1
如果您使用的浏览器,使用基于Java的客户端或使用postman,那么输入上面的网址,结果永远是用户XML ID为1,因为服务器没有存储有关客户的任何信息。
<user>
<id>1</id>
<name>mahesh</name>
<profession>1</profession>
</user>
以下是无状态的RESTful web服务的好处
Web服务可以独立对待每一个方法的请求。
Web服务不需要维护客户端之前的交互。它简化了应用程序的设计。
由于HTTP本身是一个无状态协议,RESTful Web服务无缝地与HTTP协议的工作。
以下是无状态的RESTful web服务的缺点
Web服务需要得到每个请求的额外信息,然后解释得到的情况下客户端交互客户端的状态都被照应。