.NET 创建WebService并发布到本地IIS

 

目录

1.Web Service基础

2.调用原理

3.应用说明

4.WebService特点

5.Webservice实例

6.发布

7.WebService的调用

8.参考


1.Web Service基础

Web Service也叫XML Web Service 是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。

  • XML:(Extensible Markup Language)扩展型可标记语言。

        用于传输格式化的数据,是Web服务的基础。

  • WSDL: WebService Description Language – Web服务描述语言。

        通过XML形式说明服务在什么地方-地址。

       通过XML形式说明服务提供什么样的方法 – 如何调用。

  • Soap:(Simple Object Access Protocol)简单对象访问协议。

       (1)SOAP作为一个基于XML语言的协议用于网上传输数据。

       (2)SOAP是基于HTTP的。

       (3)SOAP = 在HTTP的基础上+XML数据。

       (4)SOAP是XML Web Service 的通信协议。当用户通过UDDI找到你的WSDL描述文档后,他可以通过SOAP调用你建立的Web服务中的一个或多个操作。

       (5)传递的数据格式:

                 Envelope – 必须的部分。以XML的根元素出现。

                 Headers – 可选的。

                 Body – 必须的。在body部分,包含要执行的服务器的方法。和发送到服务器的数据。

                 

                         

                         

                              <方法名>方法参数

                         

                 

           说明:(1)因为是在HTTP上发数据,所以必须先遵循HTTP协议

                       (2)XML部分即SOAP协议,必须包含Envelope和Body元素。

  • UDDI (Universal Description, Discovery, and Integration)    

         一个跨产业,跨平台的开放性架构,可以帮助 Web 服务提供商在互联网上发布 Web 服务的信息。一种目录服务,企业可以通过 UDDI 来注册和搜索 Web 服务。

2.调用原理

Web服务的体系结构是基于Web服务提供者、Web服务请求者、Web服务中介者三个角色和发布、发现、绑定三个动作构建的。

                                               .NET 创建WebService并发布到本地IIS_第1张图片

Web服务提供者

       Web 服务的拥有者,可以发布 Web 服务,并且对使用自身服务的请求进行响应,它会等待其他的服务或者是应用程序访问自己。

       将调试正确后的Web服务通过Web服务中介者发布,并在UDDI注册中心注册;

Web服务请求者

         也就是Web 服务功能的使用者,它通过服务注册中心也就是Web服务中介者查找到所需要的服务,再利用 SOAP 消息向 Web 服务提供者发送请求以获得服务。

Web服务中介者

          也称为服务代理,用来注册已经发布的 Web服务提供者,并对其进行分类,同时提供搜索服务,简单来说的话,Web 服务中介者的作用就是把一个Web 服务请求者和合适的Web 服务提供者联系在一起,充当一个管理者的角色,一般是通过 UDDI来实现。

发布:通过发布操作,可以使Web服务提供者向Web 服务中介者注册自己的功能以及访问的接口。

发现:使得 Web 服务请求者可以通过 Web 服务中介者来查找到特点的种类的 Web 服务。

绑定:实现让服务请求者能够使用服务提供者提供的服务

 

3.应用说明

http://192.168.11.191:9900/WebService1.asmx

(1)WebService通过HTTP协议完成远程调用

  • WebService只采用HTTP POST方式传输数据;
  • 普通http post的contentType为application/x-www-form-urlencoded
  • 在Http的基础上发SOAP协议WebService的contentType为:

          text/xml 这是基于soap1.1协议。

          application/soap+xml 这是基于soap1.2协议。

(2)WebService从数据传输格式上作了限定。WebService所使用的数据均是基于XML格式的。目前标准的WebService在数据格式上主要采用SOAP协议。SOAP协议实际上就是一种基于XML编码规范的文本协议。

4.WebService特点

  • 自包含:即在客户端不需要附加任何软件,只要客户机支持 HTTP 和XML
  • 跨平台和跨语言:客户端和服务端均可以在不同的平台和语言环境中实现,同时,不必为了支持 WebServices 而更改现有的代码。
  • 基于开放和标准:XML 和 HTTP 是WebServices 的主要技术基础,而 XML 和HTTP 早就成了业内标准了。
  • 部署、升级和维护Web服务简单、方便。
  • 实现多数据、多服务的聚合:通过组合WebServices 便可以将简单的WebServices 聚合成为实现更多复杂功能的复杂的服务。
  • 不受防火墙的影响。使用SOAP协议通信,封装了XML格式的数据,以ASCII文本的方式传输,而非二进制,调试方便,而且可以使数据容易的通过防火墙,不需要单独开通信端口。

5.Webservice实例

5.1.打开vs新建项目。新建asp.net Web应用程序 。如图:

.NET 创建WebService并发布到本地IIS_第2张图片

.NET 创建WebService并发布到本地IIS_第3张图片

5.2.右键项目名称-->添加-->Web服务(ASMX)。如图所示:

.NET 创建WebService并发布到本地IIS_第4张图片

随便写个名称,我就用的默认。点确定。

.NET 创建WebService并发布到本地IIS_第5张图片

5.3新建的文件,就是提供问webservice方法的页面。这里vs自带的一个helloworld()方法。别的东西不要改。如图:

.NET 创建WebService并发布到本地IIS_第6张图片

6.WebService发布

发布流程如下:

6.1.在把方法写完之后,右键项目点发布。如图:

.NET 创建WebService并发布到本地IIS_第7张图片

6.2.配置文件选择自定义。

.NET 创建WebService并发布到本地IIS_第8张图片

然后随便写个名称(这个名称不是很重要)随便写。如图:

.NET 创建WebService并发布到本地IIS_第9张图片

6.3.连接选择文件系统。发布路径(这个路径要记住后面的IIS需要使用此目录)点击发布完成。如图:

.NET 创建WebService并发布到本地IIS_第10张图片

6.4.发布完路径下会有如图所示的文件:

.NET 创建WebService并发布到本地IIS_第11张图片

6.5.下面该配置IIS了。

如果你没有安装IIS请看 此链接 如果安装了请继续看下面的步骤。如图:

右键网站-->添加网站。如图:注意图中的红框

.NET 创建WebService并发布到本地IIS_第12张图片

点击确定。就发布iis完成啦。

下面是测试发布后的IIS网站。

.NET 创建WebService并发布到本地IIS_第13张图片

.NET 创建WebService并发布到本地IIS_第14张图片

.NET 创建WebService并发布到本地IIS_第15张图片

发布后运行出现如下错误:

.NET 创建WebService并发布到本地IIS_第16张图片

解决:

打开控制面板–管理工具–Internet 信息服务(IIS)管理器,选择默认网站,在右边的“管理网站”栏里选择“高级设置…”,将“应用程序池”修改为“ASP.NET v4.0 ”,如下图所示:

.NET 创建WebService并发布到本地IIS_第17张图片

7.WebService的调用

7.1.新建一个ASP.net工程WStest1,用来调用Webservice。

.NET 创建WebService并发布到本地IIS_第18张图片

7.2右击WStest1的引用项目,选择添加服务引用

.NET 创建WebService并发布到本地IIS_第19张图片

点击高级“”

.NET 创建WebService并发布到本地IIS_第20张图片

点击“添加web引用”

.NET 创建WebService并发布到本地IIS_第21张图片

7.3.输入刚刚发布的Webservice服务的网址后,点击 ,点击“添加引用”,如下图所示:

.NET 创建WebService并发布到本地IIS_第22张图片

7.4.右击.aspx查看代码。

.NET 创建WebService并发布到本地IIS_第23张图片

.NET 创建WebService并发布到本地IIS_第24张图片

8.参考:

手把手教会你使用vs2015创建webservice并发布发布到本地IIS

 

你可能感兴趣的:(WebService)