Web Service 实例

简介:

今天看了一篇介绍Web Service的文章,于是按照操作步骤进行试验,分享给大家;

Web Service的定义它是一种构建应用程序的普遍模型,可以在任何支持网络通信的操作系统中实施运行;它是一种新的web

应用程序分支,是自包含、自描述、模块化的应用,可以发布、定位、通过web调用。Web Service是一个应用组件,它逻辑性的为其他应用程序提供数据与服务.各应用程序通过网络协议和规定的一些标准数据格式(Http,XML,Soap)来访问Web Service,通过Web Service内部执行得到所需结果.Web Service可以执行从简单的请求到复杂商务处理的任何功能。一旦部署以后,其他Web
Service
应用程序可以发现并调用它部署的服务。

步骤:创建asmx文件→添加web引用→实例化webservice→对web service 公用方法的调用

  1. 创建asmx文件



2.添加web引用

[WebMethod]
public  int Add( int a, int b)
{
return a + b;
}
[WebMethod]
public  int Subtract( int a,  int b)
{
return a - b;
}
[WebMethod]
public  int Multiple( int a,  int b)
{
return a * b;
}
[WebMethod]
public  int Divide( int a,  int b)
{
return a / b;
}

在一个class里面可以有多个[WebMethod][WebMethod]属性决定了,在引用的此web service时,是不是能被其class进行调用,所以要想被外部调用此方法,必须添加[WebMethod]属性


添加好方法之后,可以直接右键asmx文件,在【浏览器中查看】可以看到定义好的方法

我可以看到我们已经定义好的 方法,点击方法名称可以对方法进行测试

点击调用按钮就可以测试我们方法

结果以xml的形式展现出来

3.添加web引用

在我们的项目上添加引用web Service


--

 

并设置引用名称,然后点击添加引用就ok了,此时我们可以看到webservice的网址

4.对web service 公用方法的调用

我们利用新建项目时给提供的默认主页进行测试(Default.aspx)

首先需要对web service 进行实例化,以便调用里面的方法

 

ServerSite.MathWebService ws =  new ServerSite.MathWebService();

然后调用public方法,一下代码使用button事件进行触发的

 

protected  void btnSubmit_Click( object sender, EventArgs e)
{
lblAdd.Text = ws.Add( int.Parse(TextBox1.Text.ToString()),  int.Parse(TextBox2.Text.ToString())).ToString();
lblSub.Text = ws.Subtract( int.Parse(TextBox3.Text.ToString()),  int.Parse(TextBox4.Text.ToString())).ToString();
lblMul.Text = ws.Multiple( int.Parse(TextBox5.Text.ToString()),  int.Parse(TextBox6.Text.ToString())).ToString();
lblDiv.Text = ws.Divide( int.Parse(TextBox7.Text.ToString()),  int.Parse(TextBox8.Text.ToString())).ToString();
}

调用web service的结果

总结:对web service的引用其实就是对所建asmx文件的实例化,可以认为asmx文件就是class文件,然后对asmx文件的public方法进行调用来完成我们的动作;调用web service的方法步骤:1

.客户端要先将要调用的方法和参数以xml的方式进行表示,然后将xml文件通过http协议传送给web service 2.web service接收到xml文件后对文件进行解析,并调用指定的方法 3.web service 执行完方法之后,把结果同样也用xml文件的方式进行表示,然后通过http协议回传给客户端;(欢迎指正)

 


本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/739332,如需转载请自行联系原作者

 

相关文章
|
2月前
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
|
2月前
|
关系型数据库 MySQL Linux
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
【Azure 应用服务】在创建Web App Service的时候,选Linux系统后无法使用Mysql in App
|
2月前
|
Shell PHP Windows
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
|
2月前
|
Linux 应用服务中间件 网络安全
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
|
2月前
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因
【Azure 应用服务】通过 Web.config 开启 dotnet 应用的 stdoutLog 日志,查看App Service 产生500错误的原因
|
2月前
|
Linux Python
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
【Azure 应用服务】Azure App Service For Linux 上实现 Python Flask Web Socket 项目 Http/Https
|
2月前
|
存储 安全 网络安全
【Azure 环境】使用Azure中的App Service部署Web应用,以Windows为主机系统是否可以启动防病毒,防恶意软件服务呢(Microsoft Antimalware)?
【Azure 环境】使用Azure中的App Service部署Web应用,以Windows为主机系统是否可以启动防病毒,防恶意软件服务呢(Microsoft Antimalware)?
|
2月前
|
存储 Linux 网络安全
【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志
【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志
|
2月前
【Azure 云服务】Azure Cloud Service 为 Web Role(IIS Host)增加自定义字段 (把HTTP Request Header中的User-Agent字段增加到IIS输出日志中)
【Azure 云服务】Azure Cloud Service 为 Web Role(IIS Host)增加自定义字段 (把HTTP Request Header中的User-Agent字段增加到IIS输出日志中)
|
2月前
|
Web App开发 安全 JavaScript
【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)
【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)