与ASP相关的外文文献。网

我有毕业论文,但是字数太多。我不能发送它。

网络服务

探索Web服务的一个很好的起点是准确定义什么是Web服务。Web服务是一种应用程序,它:

在Web服务器上运行

向感兴趣的调用方公开Web方法

侦听表示调用Web方法的命令的HTTP请求

执行Web方法并返回结果

大多数Web服务期望使用包含SOAP消息的HTTP请求来调用它们的Web方法。SOAP是一个基于XML的词汇表,用于使用HTTP和其他协议执行远程过程调用。您可以在/calc.asmx上阅读所有相关内容,下面是客户端如何通过在HTTP请求中传输SOAP信封来调用Add方法。此示例将2和2相加:

POST/calc . asmx HTTP/1.1

主持人:www.wintellect.com

内容类型:文本/XML;charset=utf-8

内容长度:338

soap action:“mands。以下GET命令通过调用Web服务的Add方法将2和2相加:

GET /calc.asmx/Add?a = 2 & ampb=2 HTTP/1.1

主持人:www.wintellect.com

Web服务的响应如下:

HTTP/1.1 200 OK

内容类型:文本/XML;charset=utf-8

内容长度:80

& lt?xml版本="1.0 "编码="utf-8 "?& gt

& ltint xmlns="mand将2和2相加:

POST/calc . asmx/Add HTTP/1.1

主持人:www.wintellect.com

内容类型:application/x-www-form-urlencoded

内容长度:7

a = 2 & ampb=2

这是网络服务的回应:

HTTP/1.1 200 OK

内容类型:文本/XML;charset=utf-8

内容长度:80

& lt?xml版本="1.0 "编码="utf-8 "?& gt

& ltint xmlns="panies。您可以使用。NET框架。因为这本书是关于微软的。NET,本章讲的是后者。使用编写Web服务。与所有其他方法相比,NET Framework提供了两个优势:

的。NET框架使得编写Web服务变得极其容易。

用。NET Framework是托管应用程序,这意味着您不必担心内存泄漏、游离指针和其他困扰程序员的问题,这些问题花费的时间超过了开发时间。

使用。NET框架?我很高兴你问了这个问题,因为这是下一节要讲的内容。

你的第一个网络服务

图11-1所示的ASMX文件是一个完整的Web服务。它实现了两个Web方法:Add和Subtract。两者都接受两个整数作为输入,并返回一个整数。部署Web服务非常简单,只需将它复制到Web服务器上可通过URL寻址的目录中。如果将Calc.asmx放在wwwroot中,则Web服务的本地URL是http://localhost/calc.asmx。

asmx演示了使用。NET框架:

Web服务在ASMX文件中实现。ASMX是在Machine.config中注册到ASP.NET(特别是ASP.NET HTTP处理程序)的特殊文件扩展名

ASMX文件以@ WebService指令开头。该指令至少必须包含一个Class属性,用于标识组成Web服务的类。

Web服务类可以用可选的Web service属性进行属性化。本例中的代码为Web服务分配了一个名称和描述,当用户在浏览器中调用Calc.asmx时,这些名称和描述会显示在生成的HTML页面中。WebService属性还支持Namespace参数,该参数可用于更改XML命名空间的名称,该命名空间限定了Web服务成员的范围。

通过用WebMethod属性标记Web服务类中的公共方法来声明Web方法。通过省略属性,可以将帮助器方法构建到Web服务中,这些方法由Web方法内部使用,但本身不作为Web方法公开。图11-1中的WebMethod属性也为它们的Web方法分配了描述性文本。在“WebMethod属性”一节中,您将了解更多关于描述和其他WebMethod参数的信息

HTTP、XML和SOAP隐藏在幕后。您不必处理原始的XML数据或SOAP消息,因为。NET Framework会为您处理这些问题。