一. WebService 概述 :
WebService是一个(SOA)面向服务编程的架构,他不依赖于平台,不依赖于语言,可以实现不同的语言之间通过XML格式描述实现相互调用,通过Interner进行基于Http协议的网络应用间的交互.通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行网络注册.
XML:(Extensible Markup Language)扩展型可标记语言. 面向短期的临时数据处理丶面向万维网络丶是Soap的基础.
Soap:(Simple Object Access Protocol)简单对象存取协议. 是XML Web Service 的通信协议. 当用户通过UDDI找到你的WSDL描述文档后, 他通过可以SOAP调用你建立的Web服务中的一个或多个操作. SOAP是XML文档形式的调用方法的规范,它可以支持不同的底层接口, 像HTTP(S)或者SMTP.
WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档, 用于说明一组 SOAP 消息以及如何交换这些消息. 大多数情况下由软件自动生成和使用.UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web服务供应商和使用者的新项目. 在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制. UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息. 它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据
二. WebService 接口测试 :
测试WebService接口,可以使用SoapUI测试工具来进行调用WebService接口.示例如下 :
1.打开SoapUI,新建一个Soap工程 :
2.我们以天气预报的 WSDL 地址为例, 导入SoapUI查看其中的所有接口信息.
WSDL地址 http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
3.查看接口及报文,并输入参数直接进行调用
注释 :
根元素 : Envelope
Header元素 : 不是强制出现,由编程人员控制,主要用于携带一些额外的信息.例: 用户名,密码等.
Body : 调用正确后返回,Body元素应该遵守WSDL要求的格式.
三. 创建丶部署丶调用WebService 的简单示例 :
概念性的东西就不说太多了.
WebService总之一句话 : 可以应用于分布式应用程序之间的数据交互,和不同程序之间的数据交互.
开发工具的话我用的是 Visual Studio 2019.
1.创建Web应用
然后,右击项目,添加 ----> 新建项
选择Web服务,点击添加. 一个简单的WebService就创建完成了,接下来编写一个简单的方法
注:如果方法需要通过WebService的地址进行调用,则必须在方法上打上[WebMethod]特性标签,否则是无法通过WebService 访问到的.Description方法的描述.
然后点击运行,则会看到以上的方法了.需要调用的 话 http://localhost:24986/WebService_a.asmx 直接根据地址栏中的地址进行调用.
那么如何让其他应用程序通过网络来对我们进行访问呢?那就需要部署到服务器上了.但我们演示就直接部署在本机吧.服务器与本机部署方法一致.
网站部署我们需要用到IIS,我的电脑上默认是已经开启的.如果没有开启的话,可以通过 开始菜单 > 控制面板 > 程序 > 启用或关闭 windows 功能 开启.具体的可以网上搜索一下,这里就不做过多的介绍.
开启IIS之后,我们右击项目---> 点击发布后
到此则发布完成了,然后打开IIS管理器,然后选择网站,点击添加网站.
网站创建完成后,并不一定就能使用了,期间还会遇到很多问题,我将我遇到的问题分享给大家:
这个问题就是权限不够,解决方法就时给他配置权限,如下图 :
配置完成后
这个错误的原因是因为没有配置网站的默认文档.
解决方法就是选中网站,点击默认文档,然后添加一个默认的页面,即应用程序的起始页面.
然后我们就部署成功了
之后呢我们用Asp.net 来调用WebService服务调用示例.
创建一个控制台Demo
创建完成后,右键引用 ---> 添加服务引用
点击高级 ---> 添加Web引用
然后点击添加引用
之后呢,我们在控制台中来调用此求和方法Sum
输出的结果为
到此,我们潜入理解WebService以及创建丶部署丶调用就完成了.
.Net_WebService_学习笔记
最新推荐文章于 2024-09-05 16:42:41 发布