web-services - 如何理解 SOAP Web 服务仅使用 HTTP 进行传输?

标签 web-services rest http soap web

据我了解,RESTful Web 服务使用了 http 的全部功能,足以说明所有剩余需求都是 http,但同时剩余!=http。 CRUD 提供了使用 API 资源执行任何操作的能力,例如我们发送 http 请求,该请求具有用于认证的 header 、方法名称(例如 put)以及正文中用于更新的 json。这个过程是如何通过 SOAP 运行的? SOAP 使用 XML,但是这个 XML 是如何传递给 API 的呢?

最佳答案

SOAP 基于 XML,它表示消息是在具有 header 和正文的 SOAP 信封中传递的。

SOAP envelope

当通过 HTTP 传递 SOAP 消息(无论是请求还是响应)时,您会将整个信封放入 HTTP 主体中。

enter image description here

如果实现正确,在 HTTP header 的 Content-Type 中,您将拥有 application/soap+xml

此外,在 SOAP 1.1 中,您可能还具有 SOAPAction header ,该 header 不是强制性的,已详细讨论 in this article .

参见this article用于示例原始 SOAP 请求和响应。这是一个intro to SOAP您可能也会发现有帮助。

希望这有帮助!祝你好运。

关于web-services - 如何理解 SOAP Web 服务仅使用 HTTP 进行传输?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29953609/

相关文章:

asp.net - 从数据库向 JW Player 提供电影文件

c# - 在哪里存储 Web 服务异常?

rest - 如何设计具有 2 因素身份验证 (2FA) 的无状态 REST 登录?

rest - HTTP 客户端如何向服务器请求最新数据/刷新缓存?

flash - 用于浏览器和 Flash 的 Node.js 和套接字

python - Flask 和/或 Tornado - 处理对外部网络服务的耗时调用

php - 将表的 id 调用到新表并将值插入到该新表中

rest - 通过 REST API [MapR 6.1/Hadoop-2.7] 从 Yarn 查询节点标签拓扑

rest - 异常 java.lang.ClassNotFoundException : com. sun.jersey.spi.container.servlet.ServletContainer

HTTP 代理 SSL 隧道中继详细信息