谁能解释一下 XMLRPC、SOAP 和 C# Web 服务之间的区别?

发布于 2024-08-13 16:41:18 字数 1435 浏览 4 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

◇流星雨 2024-08-20 16:41:18

它们都使用相同的传输协议 (HTTP)。

XMLRPC 使用 XML 格式化传统 RPC 调用以进行远程执行。

SOAP 将调用包装在 SOAP 信封中(仍然是 XML,不同的格式,面向基于消息的服务而不是 RPC 样式调用)。

如果您使用 C#,那么您最好的选择可能是基于 SOAP 的 Web 服务(至少在您列出的选项中)。

All of them use the same transport protocol (HTTP).

XMLRPC formats a traditional RPC call with XML for remote execution.

SOAP wraps the call in a SOAP envelope (still XML, different formatting, oriented towards message based services rather than RPC style calls).

If you're using C#, your best bet is probably SOAP based Web Services (at least out of the options you listed).

雾里花 2024-08-20 16:41:18

为了调用用 C# 编写的 Web 服务,您需要能够使用 WSDL(除了这里提到的所有有用术语之外,还请检查一下)。我遇到的几个库:

  • suds 是一个轻量级 SOAP python 客户端。
  • ZSI 是更强大的库,它还具有复杂类型的 WSDL 消耗。
  • SOAPpy 是一个很好的库。不幸的是它自2005-02-22以来就没有更新过,所以我在这里提供它仅供参考。

Python Web 服务 页面包含有关不同相关库的更多信息和链接。

In order to call web service written in C#, you will need SOAP library that is able to consume WSDL (check it out in addition to all the useful terms mentioned here). Couple of the libraries i came across:

  • suds is a lightweight SOAP python client.
  • ZSI is more powerful library that also has WSDL consumption of complex types.
  • SOAPpy was good library. Unfortunately it was not updated since 2005-02-22, so i provided it here only for reference.

Python Web services page has more information and links on different related libraries.

想你只要分分秒秒 2024-08-20 16:41:18

它们是完全不同的协议,您需要找出您想要使用的 Web 服务所使用的协议并对其进行编程。 Web 服务实际上只是一个概念 XML-RPC、SOAP 和 REST 是实现这个概念的实际技术。这些实现不可互操作(没有某些转换层)。

所有这些协议基本上都支持相同的事情,通过网络调用远程某些应用程序。然而,它们执行此操作的细节有所不同,它们不仅仅是同一协议的不同名称。

They are completely different protocols, you need to find out the protocol used by the web service you wish to consume and program to that. Web services is really just a concept XML-RPC, SOAP and REST are actual technologies the implement this concept. These implementations are not interoperable (without some translation layer).

All these protocols enable basically the same sort of thing, calling into remote some application over the web. However the details of how they do this differ, they are not just different names for the same protocol.

つ可否回来 2024-08-20 16:41:18

xml-rpc:它是一种调用远程过程的机制跨网络的分布式系统集成功能。它使用基于 XML 的消息文档和 HTTP 作为传输协议。此外,它仅支持6种基本数据类型以及用于通信的数组。

SOAP:SOAP 也是基于 XML 的协议,用于使用 HTTP 传输协议进行信息交换。然而,它比 XML-RPC 协议更先进。它使用 XML 格式的消息,有助于跨分布式应用程序通信复杂的数据类型,因此现在得到了广泛的使用。

xml-rpc: Its a mechanism to call remote procedure & function accross network for distributed system integration. It uses XML based message document and HTTP as transport protocol. Further, it only support 6 basic data type as well as array for communication.

SOAP: SOAP is also XML-based protocol for information exchange using HTPP transport protocol. However, it is more advanced then XML-RPC protocol. It uses XML formatted message that helps communicating complex data types accross distributed application, and hence is widely used now a days.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文