【发布时间】:2015-02-08 11:16:17
【问题描述】:
我正在学习开发人员认证,但我对 REST 和 REST Web 服务 的一般概念有一些疑问。
据我所知,REST 更多地与软件\网络架构风格相关,包括针对特定技术创建可扩展 Web 服务的指南和最佳实践(不同于 SOAP 是一个特定实现的网络协议)。
第一个疑问是:“REST 是否仅与 Web 服务实现相关,或者还可以与其他用途相关?如果它可以与其他用途相关,那是什么?
据我所知,使用这种 REST 样式,消息是使用 HTTP 协议直接发送和接收的,而不使用中间协议作为 SOAP强>。
我知道 REST 是无状态的(不维护有关先前状态的信息),因此如果我使用 REST 样式,我将无法使用 Http Session 或 coockies 来保存有关之前发生的事情的信息。如果是真的,为什么?状态管理有什么好处?与 SOAP 有什么区别? SOAP 是有状态的吗? (在我看来不是,但我可以说错话)。
使用 REST 样式将 resources 建模为 名词,例如:
http://mybank.com/banking/accounts/123456789
然后我可以对这些资源执行一组有限的操作,操作描述为:GET、PUT、POST、删除
阅读课程文档,如果架构通过 Http 协议工作,这些操作是默认操作。那么这些操作是我可以执行的唯一操作还是可以被其他人使用?你能给我解释一下吗?
可能我对Http协议知识的差距很大,我只知道Http协议只支持POST和GET操作。那么这些 PUT 和 DELETE 操作到底是什么? Http 协议特定的操作是 GET 和 POST 吗? PUT 和 POST 有什么区别?以及为什么 REST 架构使用 PUT 而不是 POST?
Tnx
【问题讨论】:
-
少随机粗体请。
标签: web-services rest http soap