为什么我们说Web服务是无状态的?Webservices是无状态的?
回答
它们不会在来自客户端的请求之间持续任何状态。即服务不知道也不关心后续请求来自已经/还没有做出先前请求的客户端。基本上,它是一个'给我这个信息,忘了我',这使得客户有责任维持任何状态。
请求是相互独立的。
因为HTTP是无状态的。在客户端请求被服务器完成之后,没有信息被存储用于未来的事务。
因为Web服务基于HTTP,这是一种无状态协议。
引用wikipedia:
无状态服务器是一个服务器,它 将每个请求作为一个独立的事务 即无关于任何先前 请求。
即,每个请求与前一个请求是独立的:即使我们使用一些“技巧”(例如cookie)来保留请求之间的某些状态,但这不是协议定义的内容。
无状态协议和无状态Web服务之间有很大的区别。应用程序可以是有状态的(使用“技巧”,如您所述),而底层协议是无状态的。另外,Web服务不一定意味着HTTP。例如,SOAP可以作为传输层使用SMTP。 – 2010-02-22 19:16:25
我会毫不犹豫地将SMTP SOAP服务称为“Web服务”。有很多类型的服务,但对我来说,Web服务= HTTP或HTTPS。 SMTP在网络之前。所以我认为帕斯卡的相关性很好。 – codenheim 2014-05-14 20:44:18
Web服务的概念是建模RPC(远程过程调用)又名一个函数。因此你不需要使用会话。此外,无状态的想法来自于将Web服务器扩展到服务器场的需求,从而实现更高的容量。
但是,使用状态的选择取决于技术和开发人员。没有什么可以阻止您创建ASP.Net Web服务并在方法定义中设置“EnableSession = True”。
这在一些基本的身份验证方案中很有用,例如本土表单身份验证或为短期“工作流程”提供自动关联。 (但我强烈建议您考虑更现代的技术将提供更高级别的安全性和性能)。
- 1. JBossWS&无状态WebServices,OutFaultInterceptor被忽略
- 2. web的含义是无状态的,http是无状态协议?
- 3. HTTPS有状态还是无状态?
- 4. 操作是无状态的,但是控制器是无状态的?
- 5. Hacklang是一种有状态语言还是无状态语言?
- 6. 无状态的饼干VS全状态
- 7. JavaScript中无状态的状态
- 8. 具有无状态的分层状态
- 9. 无状态与有状态的bean
- 10. 基于PHP或PHP的Web框架是有状态的还是无状态的?
- 11. 这个Spring bean是无状态的吗?
- 12. BLL应该是无状态的吗?
- 13. REST是如何无状态的?
- 14. 无状态JButton
- 15. Passport.js无状态
- 16. Django无状态?
- 17. 无法解析从状态“状态”“”
- 18. 有状态与无状态Web服务
- 19. 有状态和无状态流处理
- 20. 无状态自动推进状态机
- 21. Keras - 有状态vs无状态LSTM
- 22. Admob状态恢复为无效状态
- 23. Angular 2无状态或有状态?
- 24. 确定webapp是否为无状态
- 25. 无状态后端是否安全?
- 26. 有状态Web服务与(状态Bean +无状态WS)
- 27. 是WLST是有状态的
- 28. 无法解析从状态 '状态2' '状态1' 从一个状态
- 29. 无状态会话Bean中的实例变量 - 状态是如何维护的?
- 30. Amf PHP无状态?
@mike:太文字? – brian 2010-02-22 18:09:18
我评论的版本很短,基本上说“因为他们不坚持状态。”我正在删除我的评论,并且还有一个优点。 – 2010-02-22 18:13:06
@mike:我的不好。我有同感。这就是我更新它的原因。 – brian 2010-02-22 18:15:37