【问题标题】:How do you change the host name URL presented by WSDL?如何更改 WSDL 提供的主机名 URL?
【发布时间】:2016-04-01 18:57:32
【问题描述】:

我使用 WCF 创建了一个 Web 服务应用程序(托管在 IIS 中)。当我尝试在客户端创建服务引用时,生成的地址是本地网络上的服务器名称(例如 server1.corporate.darkbond.com)。我希望客户端 WSDL 引用实际发布的名称(例如 manager.darkbond.com)。有什么方法可以在服务器端使用 WSDL 来完成此操作,而不是在每次更新后编辑客户端配置文件?

【问题讨论】:

  • 我相信地址是根据提供 WSDL 的服务的地址生成的。您应该能够在客户端更改服务的地址。
  • 查看question 的答案。如果您应用建议的解决方案,则 WSDL 文档中的服务位置将与客户端用于访问 WSDL 的位置相匹配。
  • 该示例演示了如何更改端口名称。我找不到 URL 被更改的示例。我错过了什么?
  • @DRAirey1 我添加了更直接的答案

标签: web-services wcf iis wsdl


【解决方案1】:

如果您希望生成的 WSDL 中的地址与客户端用于访问 WSDL 的地址相匹配,例如通过负载平衡器主机名,请使用添加了 useRequestHeadersForMetadataAddress 的 serviceBehavior。

<serviceBehaviors>
    <behavior name="myBehaviour">
      <useRequestHeadersForMetadataAddress />
      <serviceMetadata httpGetEnabled="true"/>
    </behavior>
</serviceBehaviors>

【讨论】:

    猜你喜欢
    • 2014-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    • 2022-01-24
    • 2021-10-04
    相关资源
    最近更新 更多