【问题标题】:WCF, ASMX Basic HTTP binding and IISWCF、ASMX 基本 HTTP 绑定和 IIS
【发布时间】:2011-03-04 18:40:58
【问题描述】:

我一直在使用 WCF“自”托管应用程序做很多工作。我最近被要求编写一个 Web 服务,其中调用客户端是一个名为“WGET”的基于 Linux 的程序。我想使用 WCF 而不是传统的 ASMX Web 服务。 Web 服务正在返回标准 XML 响应。我不确定这两种技术之间的下划线细节,但我知道 WCF 是正确的路线。我创建了一个要在 IIS 中托管的 WCF 服务(使用 basicHttpBinding)。

1.) 经典的 ASMX Web 服务(标准 HTTP POST/GET)是否使用 SOAP 来返回响应?我从 XSD 创建了一个用于 Web 服务响应的类。幕后究竟发生了什么?是否只有特殊的 XML HTTP 标头知道如何处理响应?响应没有包含在 SOAP 中吗?传统的 ASMX Web 服务与我使用 .Net "XSD" 程序生成的类完美配合。

2.) 我想为这项服务使用 WCF。使用 basicHttpBinding 会起作用吗?正如我所读到的,这是用于 ASMX 客户端的正确绑定。这是否使用 SOAP、标准 HTTP 标头或其他东西?

3.) 这是一个愚蠢的问题,因为我没有做过很多 Web 服务编程。我注意到在 ASMX 默认登录页面上有响应示例和调用该功能的代码。当我使用 WCF 创建相同的服务时,我必须创建一个客户端应用程序来执行这些任务。有没有办法像经典的 ASMX 服务一样公开 WCF 端点,还是 WSDL 是唯一的路由?

与往常一样,我非常感谢您的反馈。

谢谢, 布伦南

【问题讨论】:

    标签: .net xml wcf iis asmx


    【解决方案1】:

    回答您的问题:

    1.) 经典 ASMX Web 服务(标准 HTTP POST/GET)是否使用 SOAP 返回响应?

    是的。 ASMX 使用 SOAP 1.1 标准,该标准也在 WCF 中实现。

    2.) 我想为这项服务使用 WCF。将使用 basicHttpBinding 工作吗?

    basicHttpBinding 是模仿 ASMX 服务的完美匹配,是的。它使用 SOAP 1.1 就像 ASMX 一样,应该表现得非常像 ASMX。

    3.) 我注意到在 ASMX 默认登录页面上有一些示例 响应和代码调用 功能。有没有办法 像经典一样公开 WCF 端点 ASMX 服务还是 WSDL 唯一 路线?

    WCF 仅显示一个默认页面,让您了解确实存在服务。没有旋钮或选项可以打开以获得相同的 ASMX 样式页面(出于安全原因)。如果需要,您必须自己执行此操作。 WSDL / XSD 确实是 WCF 的最佳选择。

    【讨论】:

    • 谢谢马克!感谢您的回复。
    猜你喜欢
    • 1970-01-01
    • 2020-06-19
    • 2023-04-04
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 2010-12-06
    • 2015-10-15
    相关资源
    最近更新 更多