【问题标题】:What is the difference between SOAP and ASMXSOAP 和 ASMX 有什么区别
【发布时间】:2026-01-11 01:30:01
【问题描述】:

这对我来说听起来很容易,但是当我搜索它时,我找不到 SOAP 网络服务和 ASMX 网络服务之间的确切关系。 他们是一回事吗? asmx 是 SOAP 的实现吗?

这就是为什么这对我很重要。我有一个非常简单的 ASMX 网络服务。我正在研究如何返回复杂数据。 SOAP 使用消息信封来处理数据交换,但我的 asmx 示例可以轻松地将其返回到 C# 列表中。那么,我还应该担心学习 SOAP 中的消息信封吗!?

我觉得如果我非常清楚这两者之间的区别,这将是一个好的开始,并会帮助我决定以后需要使用的技术。

【问题讨论】:

    标签: c# asp.net soap asmx


    【解决方案1】:

    基本答案,因为我认为任何过于复杂的事情只会让你更加困惑......

    ASMX / WCF / Web 服务 = 端点/地方,某人可以打电话询问问题/发送命令等。

    SOAP = 简单对象访问协议是数据在客户端和 Web 服务之间来回传输的方式。

    所以它们不是你可以比较差异的东西,因为它们是不同的东西。将 Web 服务视为一个人,将 SOAP 视为一种语言。如果两个人(Web 服务)都说英语 (SOAP),他们将能够相互理解并能够交流。

    【讨论】:

    • 非常有帮助,谢谢!这是我开始研究的示例:codeproject.com/Articles/94043/… 是什么让 Ayyash 的示例成为 SOAP Web 服务?如果我用 ASP.Net 和 C# 编码,我还需要学习交换数据的 Message Envelope 方法吗?
    • ASMX 被视为创建 Web 服务的“旧”方式。 WCF 更新更强大(并不总是一件好事)。默认情况下,它们都使用 SOAP(除非您另有选择),因此这不是您必须自己做的事情,它们会处理/抽象您,无需了解太多。然后当然你有不使用 SOAP 的 Web API (RESTful),这是很多人正在使用的方式,因为 SOAP 也有很多缺点。老实说,那篇文章还可以,但现在已经过时了,不被视为“最佳”方法。
    • ASMX 不是 SOAP
    • @MickyD - 才看到这个,没错,也是为什么我说“所以它们不是你可以比较差异的东西,因为它们是不同的东西”
    最近更新 更多