Man*_*noj 16 java rest web-services
我一直认为SOAP是"重量级"而REST是"轻量级".在什么参数上,我们告诉REST比SOAP更轻量级?
我们之前在我们公司使用IFW模型Web服务.但我们的管理层告诉我们开发REST中的所有新API.我们是我公司的后端服务提供商.
REST如何对我们最有用?
"轻量级"在上下文中意味着什么?
这个问题似乎是重复,但不理解使用的术语.
REST为您提供了一个较少会话的系统窗口.它不跟踪你,它不关心你.您所做的就是发送一个请求,其中包含一些id,以确认您可以创建它.它可能会返回一个HTTP状态代码,它可能会返回一些正文,但最终,一旦请求完成,您就会被遗忘.
SOAP在某种意义上很重,它描述了远程系统和客户端之间的"契约".为了让您的客户端有效地进行通信,它必须实现其架构......这是SOAP框架.它描述了您可以进行的调用以及您可以预期的对象.
SOAP很重的原因是序列化.当你通常序列化的Java对象的每个SOAP请求,发送通过HTTP和得到被反序列化为通过反射的对象的序列化反应......这是沉重的.这也意味着如果端点改变了它们的工作方式,则必须更改合同.您不必使用REST执行此操作.
使用SOAP,您会遇到多线程问题.
快速回答..
它们可能意味着REST服务是"轻量级"的,因为您不需要向客户端发布更改.您只需更改逻辑,保留URL并且响应应保持不变.
使用SOAP ...如果向对象添加了新字段,则必须让客户端实现新模式.SOAP很老了.
REST 是轻量级的,因为它依赖于 HTTP 标准来完成其工作。能够快速启动并运行有用的 Web 服务真是太好了。如果您不需要严格的 API 定义,这就是正确的选择。大多数网络服务都属于这一类。您可以对 API 进行版本控制,以便 API 的更新不会对使用旧版本的人造成破坏(只要他们指定版本)。REST 本质上需要 HTTP 并且与格式无关,因此您可以使用 XML、JSON、HTML 等)。
但 SOAP 会将结构包装到 SOAP 信封中(遵循 XML 标准)。SOAP 信封的复杂性取决于所使用的消息版本和其他 Web 服务协议。SOAP 通常与传输无关,这意味着您不一定需要使用 HTTP。
可以指出,SOAP 是为分布式计算环境设计的,而 REST 是为点对点环境设计的。
我想知道,虽然 SOAP 提供了更多的安全性,但基于 REST 的 API 会更节省资源并且更具可扩展性,这样说是否可以?例如,Twitter、Facebook、Google Drive、Blogger 等都具有可供客户端使用的基于 REST 的 API。
| 归档时间: |
|
| 查看次数: |
10681 次 |
| 最近记录: |