ChatGPT解决这个技术问题 Extra ChatGPT

Android 的 SOAP 1.1、SOAP 1.2、HTTP GET 和 HTTP POST 方法有什么区别?

我正在编写 SOAP Web 服务的代码,我想知道 SOAP 1.1、SOAP 1.2、Android 的 HTTP GET 和 HTTP POST 方法的变化,这是其中的首选。请找出其使用 URL 或其代码的示例。

谢谢

这是官方 W3C SOAP 1.2 Primer 相关部分的链接:Changes Between SOAP 1.1 and SOAP 1.2

e
emarshah

SOAP 版本的差异

SOAP 1.1 版和 SOAP 1.2 版都是万维网联盟 (W3C) 标准。可以部署不仅支持 SOAP 1.1 还支持 SOAP 1.2 的 Web 服务。从 SOAP 1.1 对 SOAP 1.2 规范所做的一些更改很重要,而其他更改则很小。

SOAP 1.2 规范对 SOAP 1.1 进行了一些更改。此信息并非旨在深入描述 SOAP 1.1 和 SOAP 1.2 的所有新功能或更改功能。相反,此信息突出显示了当前 SOAP 版本之间的一些更重要的差异。

对 SOAP 1.2 规范的重大更改包括以下更新: SOAP 1.1 基于 XML 1.0。 SOAP 1.2 基于 XML 信息集(XML Infoset)。 XML 信息集 (infoset) 提供了一种用 XSD 模式描述 XML 文档的方法。但是,信息集不一定使用 SOAP 1.1 所基于的 XML 1.0 序列化来序列化文档。这种描述 XML 文档的新方法有助于揭示其他序列化格式,例如二进制协议格式。您可以使用二进制协议格式将消息压缩为紧凑格式,其中可能不需要一些详细的标记信息。

在 SOAP 1.2 中,您可以使用绑定到底层协议的规范来确定在底层协议数据单元中使用哪种 XML 序列化。 SOAP 1.2 - 第 2 部分中指定的 HTTP 绑定使用 XML 1.0 作为 SOAP 消息信息集的序列化。

SOAP 1.2 提供正式定义传输协议的能力,而不是使用 HTTP,只要供应商符合 SOAP 1.2 中定义的绑定框架。虽然 HTTP 无处不在,但它不如 TCP/IP 和 MQ 等其他传输方式可靠。 SOAP 1.2 为 SOAP 处理模型提供了更具体的定义,消除了在没有 Web 服务互操作性 (WS-I) 配置文件的情况下可能导致互操作性错误的许多歧义。目标是显着减少使用 SOAP 1.2 实现的不同供应商之间出现互操作性问题的可能性。 SOAP with Attachments API for Java (SAAJ) 也可以单独作为一种简单的机制来发出 SOAP 请求。 SAAJ 规范的一个主要变化是能够表示 SOAP 1.1 消息和附加的 SOAP 1.2 格式化消息。例如,SAAJ 版本 1.3 在 SOAP 标头元素上引入了一组更利于 SOAP 1.2 的新常量和方法(例如 getRole()、getRelay())。 SAAJ 的工厂还有其他方法可以创建适当的 SOAP 1.1 或 SOAP 1.2 消息。 SOAP 1.2 的信封和编码模式的 XML 名称空间已更改。这些更改将 SOAP 处理器与 SOAP 1.1 和 SOAP 1.2 消息区分开来,并支持 SOAP 模式的更改,而不影响现有的实现。 XML Web 服务的 Java 体系结构 (JAX-WS) 引入了支持 SOAP 1.1 和 SOAP 1.2 的能力。由于 JAX-RPC 引入了在 SOAP 消息遍历运行时时对其进行操作的要求,因此需要在其适当的 SOAP 上下文中表示该消息。在 JAX-WS 中,对 SAAJ 1.3 的支持产生了许多额外的增强。

对于特定的 android 没有定义 POST AND GET 方法....但这里的一切都是不同的

GET GET 方法将名称/值对附加到 URL,允许您检索资源表示。这样做的一个大问题是 URL 的长度是有限的(大约 3000 个字符),如果您的页面上的表单中有很多东西,则会导致数据丢失,因此这种方法仅在参数数量较少的情况下才有效。

这对我意味着什么?基本上,这使得 GET 方法在大多数情况下对大多数开发人员来说毫无价值。这是另一种看待它的方式:如果表单使用大量参数,或者如果参数包含大量数据,则 URL 可能会被截断(并且很可能会出现在当今以数据为中心的站点)。此外,在 URL 上传递的参数在浏览器的地址字段中可见(YIKES !!!)不是显示任何类型敏感(甚至非敏感)数据的最佳位置,因为您只是在乞求好奇的用户弄乱它。

POST GET 方法的替代方法是 POST 方法。此方法将名称/值对打包在 HTTP 请求的正文中,这使得 URL 更清晰,并且对表单输出没有大小限制,基本上可以不费吹灰之力地使用哪个。 POST 也更安全,但肯定不安全。尽管 HTTP 完全支持 CRUD,但 HTML 4 仅支持通过其各种元素发出 GET 和 POST 请求。这个限制阻碍了 Web 应用程序充分利用 HTTP,为了解决这个问题,大多数应用程序重载 POST 以处理除资源检索之外的所有事情。

Link to original IBM source


这个答案是 IBM 的版权还是相反? pic.dhe.ibm.com/infocenter/wasinfo/v6r1/topic/…
链接失效了
i
informatik01

W3C 发布的以下文档还描述了 SOAP 1.1 和 1.2 之间的区别:

从 SOAP/1.1 到 SOAP 版本 1.2 9 分