Web Service简介,Web Service开发,Web Service 属性介绍,Web Method常用属性,实战演练——新闻查询服务

本文深入讲解WebService的概念、特点、优缺点及基本组件,包括XML、SOAP、WSDL和UDDI等,介绍了.Net平台对WebService的支持,并通过实例演示了在ASP.NET中创建WebService的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

1、 Web Service简介

1.1Web Service特点

  1. . Web Service是跨平台的,应用程序经常需要从运行在Linux主机上的程序中获取数据,然后把数据发送到主机或UNIX应用程序中去。即使在同一个平台上,
    不同软件厂商生产的各种软件也常常需要集成起来。通过Web
    Service,应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。

  2. Web Service是无语言限制的,你可以使用.NET,JAVA,PHP,VB.等多种语言开发并进行相互调用。

  3. 使用SOAP时,数据是以ASCII文本的方式传输,调用很方便,数据容易通过防火墙而实现无缝连接。

1.2Web Service优缺点

优点(适用的场景)

        1. 跨防火墙的通信
        2. 跨平台,跨语言应用程序集成 
        3. 软件和数据重用

缺点(不适用的场景)

        1. 单机应用程序
        2.  局域网的一些应用程序

1.3Web Service基本概念

  1. XML:(Extensible Markup Language)扩展型可标记语言。面向短期的临时数据处理、面向万维网络,是SOAP的基础。

  2. SOAP:(Simple Object Access Protocol)简单对象存取协议。是Web Service 的通信协议。当用户通过UDDI找到WSDL描述文档后,可以通过SOAP调用Web Service中的一个或多个操作。SOAP是以XML文档形式调用方法的规范,它可以支持不同的底层接口,例如HTTP(S)或者SMTP。

  3. WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。

  4. UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web Service供应商和使用者的新项目。在用户能够调用Web Service之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制。

  5. .NET平台内建了对Web Service的支持,包括Web Service的构建和使用。

  6. 与其它开发平台不同,使用. NET平台,不需要其他的工具或者SDK就可以完成Web Service的开发了。

  7. . NET Framework本身就全面支持Web Service,包括服务器端的请求处理器对客户端发送和接受SOAP消息的支持。

1.4示例

  1. 创建项目ASP.NET Web应用程序。
  2. 选择项目模板,可以使用空项目模板。
  3. 在解决方案资源管理器中,选中项目名称,点击鼠标右键->添加->新建项->Web服务(ASMX)->设置名称然后添加。
  4. 运行Web Service看效果。
  5. 点击显示页面上图中的"HelloWorld"超链接看一下HelloWorld调用方式。
  6. 点击"调用"按钮,就可以看到用XML格式返回的Web Service结果,客户端可以通过对XML进行处理,解析其中的数据。

2、Web Service开发

u

  1. 在这个示例中我们初步了解了在ASP.NET中Web Service的创建方式,
  2. Web Service就是个对外调用的接口,里面有函数可供外部调用(注意:同样可以设置不允许外部调用函数)。
  3. 在Web Service服务端开发中,我们编写好Web Service,然后把它给了客户(同时我们给了他们调用规则),客户就可以从服务端获取信息,客户也不需要了解其运行过程,他们只获取数据。
  4. 在代码文件里如果我们写了一个函数后,希望此函数成为外部可调用的接口函数,我们必须在函数上面添上一行代码[WebMethod(Description=“函数的描述信息”)],如果函数没有这个特性声明,它将不能被用户引用。
  5. 先把默认的HelloWorld方法注释掉,或将HelloWorld方法前面[WebMethod]注释掉。
  6. 简单编写加减乘除运算的四个方法,和普通方法一样编写,在方法前面加上[WebMethod(Description = “方法描述”)]。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  7. 运行程序可以看到编写的方法
  8. 逐一测试调用效果
  9. 在参数上面输入参数a=10,b=5,如上图,点击调用,就可以看到用XML格式返回的Web Service结果(a与b相加的结果)

3、Web Service 属性介绍

  1. 每个Web Service都需要唯一的命名空间,它可以使客户端应用程序区分出可能使用相同方法名称的Web Service。

  2. 在Visual Studio.NET中创建的Web Service的默认命名空间是“http://tempuri.org”。尽管名空间类似于普通的URL,但是Web浏览器中是无法查看的,它只是一个唯一标识符。

  3. Web Service提供以下属性。

    Description:此属性值包含描述信息。
    Name:此属性值包含的名称,在默认情况下,该值表示Web Service的类的名称。
    Namespace: 此属性值包含Web Service的默认命名空间。

在这里插入图片描述

4、Web Method常用属性

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、实战演练——新闻查询服务

任务目标

  1. 通过新闻编号查询新闻信息

  2. 通过新闻关键词查询新闻信息

    需求说明

  3. 通过新闻编号查询新闻信息。

  4. 通过新闻关键词查询新闻信息

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

实现思路

创建ASP.NET Web应用程序使用空项目模板,名称为MVC_NewsServiceProject。
在SQL Server中创建数据库NewsDB,导入数据库脚本news.sql。
在Models文件夹中添加->新建项->数据->LINQ To SQL类。
在服务器资源管理器中,添加NewsDB数据连接,并将News表添加到DataClasses1设计器中。
设置Web Service类名称与描述信息
创建新闻关键词查询Web Method 编写查询代码。
创建新闻编号查询Web Method编写查询代码。
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值