使用 ASP.NET 创建的 XML Web services 的配置选项

Web 服务的配置遵循所有 ASP.NET Web 应用程序使用的同一个模型。 ASP.NET 配置是一种基于 XML 的文本文件配置体系结构,既强大又可扩展。 配置文件只是一组 XML 元素,它们表示 Microsoft .NET Framework 的某种特定技术功能的配置选项。 对于 Web 服务,配置选项出现在配置文件的 webServices XML 元素中。 有关可用于 Web 服务的配置选项的完整列表,请参见 <webServices> 元素

配置消息传送协议和服务帮助页

可以在配置文件的 <webServices> 元素下方的 <protocols> 元素 XML 元素中配置 Web 服务的消息传送协议和服务帮助页。 可通过为每个设置添加 <protocols> 的 <add> 元素<protocols> 的 <remove> 元素来完成配置,这些元素指定该设置是否可用于配置文件的范围。 add 元素显式添加对配置文件范围的该设置的支持,而 remove 元素移除添加的、在配置层次结构中处于较高层次的支持。 例如,可以使用 Machine.config 文件中的 add 元素在计算机级别添加协议设置,然后使用 Web.config 文件中的 remove 元素为 Web 应用程序移除该设置。 以下是 addremove 元素的语法:

<{add|remove} name="protocol name" />

addremove 元素的 name 属性具有下列选项:

设置 说明

HttpSoap

控制 Web 服务对 SOAP over HTTP 协议的支持。 默认情况下,安装时会添加支持。

HttpGet

控制 Web 服务对 HTTP-GET 协议的支持。 默认情况下,安装时不会添加支持。

HttpPost

控制 Web 服务对 HTTP-POST 协议的支持,而不管请求源于何处。 默认情况下,安装时不会添加支持。

HttpPostLocalhost

在请求源于本地计算机时,控制 Web 服务对 HTTP-POST 协议的支持。 如果将 HttpPost 添加到当前配置中,则此设置无效。 默认情况下,安装时会添加支持。

Documentation

指定当用户在浏览器中没有任何参数的情况下定位到 Web 服务的 URL 时是否显示服务帮助页。 默认情况下,安装时会添加支持。 将在本主题的后面部分进一步介绍如何配置 Documentation 协议。

Note注意:

.NET Framework 1.0 版支持 HttpSoapHttpGetHttpPostDocumentation 设置,并且默认情况下所有这些设置都在计算机级别启用。

配置 Documentation 协议

在 Web 浏览器中没有任何参数的情况下定位到 Web 服务的 URL 可使客户端查看该 Web 服务的服务帮助页(如果该服务配置为允许这样做)。 默认情况下,服务帮助页包含有关如何与 Web 服务及其公开的 Web 服务方法进行通信的可读信息。

由于服务帮助页只是一个 ASP.NET Web 窗体,因此可以将其替换或修改,以包含公司徽标之类的项。 服务帮助页的文件名在配置文件的 <wsdlHelpGenerator> 元素中指定,默认设置 DefaultWsdlHelpGenerator.aspx 在 Machine.config 文件内指定。

仅为 Documentation 协议在 <protocols> 元素中指定的配置文件的范围内的 Web 服务显示服务帮助页。 默认情况下,Documentation 协议在 Machine.config 文件中指定。 请参见“如何:禁用 Web 服务的服务帮助页”。

安全性

为 Web 服务启用 HTTP-GET 或 HTTP-POST 协议之前,您应当清楚这样做可能会使该 Web 服务遭到意外调用。 例如,一个疑心不重的用户可能会收到一封其中包含一个链接的电子邮件,单击时该链接将代表用户使用电子邮件中提供的参数调用 Web 服务。 应当在启用 HTTP-GET 或 HTTP-POST 协议之前考虑这类调用是否可能有害。

请参见

任务

如何:禁用 Web 服务的协议支持
如何:禁用 Web 服务的服务帮助页
如何:为 XML Web services 启用发现

概念

部署 XML Web services

其他资源

使用 ASP.NET 生成 XML Web services

Footer image

版权所有 (C) 2007 Microsoft Corporation。保留所有权利。