如何 add/remove 来自 WSDL 服务标签的端口?
How to add/remove ports from WSDL service tag?
我使用 C# WCF 创建了一个 Web 服务,该服务通过 IIS 托管。 hide/remove 端口是否有任何设置并使服务标签看起来像这样?设置是在 IIS 服务器上,还是在 Web 服务 web.config 文件中?
基本上,我如何选择使它(或不使它)看起来像这样?
<wsdl:service name="GameService" />
澄清:我想知道在 IIS 或 web.config 中是否有允许完全隐藏或显示所有已配置端口的设置。
其他问题:WSDL 是否不读取 Web.Config 文件? IIS 生成 WSDL 还是服务?
进一步说明:这是解决 的尝试,但未得到答复。这个问题是试图简化和改写,以便我实际收到可能的解决方案。
根据 MSDN:
A ServiceDescription instance maps to a wsdl:service element. A ServiceDescription instance contains a collection of ServiceEndpoint instances that each map to individual wsdl:port elements.
因此,您应该 adding/removing ServiceEndpoint 以影响生成的 WSDL 中的端口部分。
Here 是对 ServiceEndpoints 的描述,还有一个示例,因此您可以了解如何 add/remove 它们。我不确定您是否可以在没有至少一个端口的情况下提供功能性服务。
希望对您有所帮助。
回答:基于 SOAP 的端点绑定在 WSDL 中列出,基于 REST 的则没有。
端点绑定有两种不同的类型:SOAP 和 REST。您的服务可以将两者都包含在 web.config 文件中,只要它们具有不同的地址即可,但只有 SOAP 端点会列在 WSDL 中。不需要额外的设置或配置,服务会自动获取此信息,只要它是受支持的类型。
webHttpBinding 是一个基于 REST 的端点绑定。它适用于使用该服务的 JSON/JavaScript 个客户端,但不会在 WSDL 中列出。
basicHttpBinding 是一个基于 SOAP 的端点绑定。它适用于 C# 客户端。如果您使用 Visual Studio 添加服务引用,它会自动将这些端点添加到您的 app.config 文件,它可以这样做,因为该信息列在 WSDL 中。
感谢@nodots 为我指明了正确的方向。
我使用 C# WCF 创建了一个 Web 服务,该服务通过 IIS 托管。 hide/remove 端口是否有任何设置并使服务标签看起来像这样?设置是在 IIS 服务器上,还是在 Web 服务 web.config 文件中?
基本上,我如何选择使它(或不使它)看起来像这样?
<wsdl:service name="GameService" />
澄清:我想知道在 IIS 或 web.config 中是否有允许完全隐藏或显示所有已配置端口的设置。
其他问题:WSDL 是否不读取 Web.Config 文件? IIS 生成 WSDL 还是服务?
进一步说明:这是解决
根据 MSDN:
A ServiceDescription instance maps to a wsdl:service element. A ServiceDescription instance contains a collection of ServiceEndpoint instances that each map to individual wsdl:port elements.
因此,您应该 adding/removing ServiceEndpoint 以影响生成的 WSDL 中的端口部分。
Here 是对 ServiceEndpoints 的描述,还有一个示例,因此您可以了解如何 add/remove 它们。我不确定您是否可以在没有至少一个端口的情况下提供功能性服务。
希望对您有所帮助。
回答:基于 SOAP 的端点绑定在 WSDL 中列出,基于 REST 的则没有。
端点绑定有两种不同的类型:SOAP 和 REST。您的服务可以将两者都包含在 web.config 文件中,只要它们具有不同的地址即可,但只有 SOAP 端点会列在 WSDL 中。不需要额外的设置或配置,服务会自动获取此信息,只要它是受支持的类型。
webHttpBinding 是一个基于 REST 的端点绑定。它适用于使用该服务的 JSON/JavaScript 个客户端,但不会在 WSDL 中列出。
basicHttpBinding 是一个基于 SOAP 的端点绑定。它适用于 C# 客户端。如果您使用 Visual Studio 添加服务引用,它会自动将这些端点添加到您的 app.config 文件,它可以这样做,因为该信息列在 WSDL 中。
感谢@nodots 为我指明了正确的方向。