/inetpub /wwwroot /stockservices stockservices.asmx /bin |
条目 | 描述 |
web应用程序目录 | 作为你的xml web服务的根目录。所有的文件都存放在这个目录中。这个目录应该被标记为一个iis web应用程序所用。 |
<myxmlwebservice>.asmx 文件 | 调用xml web服务的客户端的基本url。这个文件可以为任何有效的文件名。 |
<myxmlwebservice>.disco文件 | (可选的)作为xml web服务的发现机制。.disco文件不会自动地为xml web服务创建。这个文件可以为任何有效的文件名。 |
web.config文件 | (可选择的)如果你需要覆盖默认配置设置,你可以包含一个web.config文件。xml web服务使用这个配置文件来允许系统的定制和可扩展性。例如,如果在系统中你的xml web服务需要验证而其他的web应用程序不需要的话,你可以提供一个该xml web服务特定的web.config文件。 |
/bin目录 | 包含用于这个xml web服务的二进制文件。如果你的xml web服务类和.asmx文件不在同一个目录下,那么包含类的部件必须在/bin目录中。 |
<disco:discovery xmlns:disco="http://schemas.xmlsoap.org/disco/"> </disco:discovery> |
<?xml version="1.0"?> <discovery xmlns="http://schemas.xmlsoap.org/disco/"> <discoveryref ref="/folder/default.disco"/> <contractref ref="http://mywebserver/username.asmx?wsdl" docref="service.htm" xmlns="http://schemas.xmlsoap.org/disco/scl/"/> <schemaref ref="schema.xsd" xmlns="http://schemas.xmlsoap.org/disco/schema/"/> </discovery> |
<head> <link type='text/xml' rel='alternate' href='mywebservice.disco'/> </head> |
<?xml-stylesheet type="text/xml" alternate="yes" href="mywebservice.disco" ?> |
<configuration> <system.web> <httphandlers> <add verb="*" path="*.vsdisco" type="system.web.services.discovery.discoveryrequesthandler, system.web.services, version=1.0.3300.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a" validate="false"/> </httphandlers> </system.web> </configuration> |
注意:当动态发现开启的时候,所有的xml web服务和存在于web服务器的发现文档都是可发现的。因此,当开启动态发现时必须小心,因为如果web服务器不在带有隔火墙的安全网络中的话,它可能会在无意中暴露敏感数据。
用asp.net创建的xml web服务的配置选择
xml web服务的配置遵循和所有的asp.net web应用程序使用的相同的范式。asp.net配置是一个基于xml的文本文件配置结构,既强大又可扩展。配置文件只是一组xml元素,描述用于microsoft.net framework的特定技术特性的配置选择。就 xml web服务而言,配置选择是封装在配置文件的webservices xml元素中的。
配置消息传送协议和服务帮助页面
用于xml web服务消息传送协议和服务帮助页面在配置文件的<webservices>元素下的<protocols> xml元素中配置。通过添加<add>和<remove>元素来进行配置,制定配置文件范围内的那个设置有效。<add>元素明确地添加对配置文件范围内的设置的支持,而<remove>元素移除对更高的配置等级的支持。例如,可以使用machine.config文件中的<add>元素在机器级别添加一个协议设置,然后使用web.config文件中的<remove>元素移除对某个web应用程序的设置。下面的是<add>和<remove>元素的语法:
<{add|remove} name="protocol name" /> |
设置 | 描述 |
httpsoap | 支持用于xml web服务的soap协议的控件。默认情况下安装已经添加了这个支持。 |
httpget | 支持用于xml web服务的http - get协议的控件。默认情况下安装不添加这个支持。 |
httppost | 支持用于xml web服务的http - post协议的控件,不管请求从何起源。默认情况下安装不添加这个支持。 |
httppostlocalhost | 当请求来源于本地计算机的时候,支持用于xml web服务的http - post协议的控件。如果httppost添加到当前配置中,那么这个设置就无效了。默认情况下安装已经添加了这个支持。 |
documentation | 指定一个服务帮助页面是否显示。默认情况下安装已经添加了这个支持。 |
<webservices> <protocols> <add name="httpsoap"/> <!-- <add name="httppost"/> --> <!-- <add name="httpget"/> --> <add name="documentation"/> <add name="httppostlocalhost"/> </protocols> </webservices> |
<webservices> <protocols> <remove name="httppost" /> <remove name="httpget" /> </protocols> </webservices> |
<webservices> <protocols> <remove name="documentation" /> </protocols> </webservices> |
<webservices> <wsdlhelpgenerator href="docs/myblank.asp"/> </webservices> |
新闻热点
疑难解答
图片精选