Web Service 的使用方法

时间:2015/12/3 16:42:00来源:互联网 作者:flyso 点击: 934 次

现在的好多网站都有天气预报,网上支付等功能,其实他们只不过就是引用了人家写好的一个web应用程序,就是我们通常说的web Service,可见web sevice是多么重要,现在我们就来系统的学一下asp.net中web service
Web service表面上就是一个应用程序,可以说就是一个通过web调用的API,其实,web Service是建立可互操作的分布式应用程序的平台,通过这个平台,才可以使客户端和服务器端自用的通过http进行通信,异地调用的Api很多,但是,都很难达到目前的要求,而web service可以跨语言跨平台的调用,在使用的过程中,它就和一个类一样,可以写和类一样的程序代码,唯一不同的是,类只能在本项目中调用,而web 服务可以跨语言跨平台跨项目调用,只要在[webMethod]下面的方法都可以调用,不错吧!

下面就来简单的介绍一下组成web service平台的三个技术

1、  我们知道Xml是一个可以跨语言使用的可扩展性的标记语言,而web service也就是用Xml作为平台中数据表示的基本格式

2、  通过soap作为基本的通信协议,通过soap协议可以实现不同项目,不同站点,甚至异地调用

3、  由于web service是基于http协议的,所以说可以穿越防火墙进行通信

注:WSDL用来描述web Service的文件

调用webService的方式通过下面的图看以看出有三种



可以调用本解决方案中web服务,本机的web服务,和网络上的web服务,换句话说我们可以在解决方案中或者本项目中添加web服务,或者单独创建一个web服务,发布到服务中,可以通过本机或者任意通过网络调用。

下面就来看看如何创建和调用web服务

如果我们要创建一个单独的我web服务,可以直接找到Asp.Net web服务应用程序



其他的比如在本项目或本解决方案中创建web服务也是如此



WebService.cs中的代码

public class WebService : System.Web.Services.WebService {



    public WebService () {



        //如果使用设计的组件,请取消注释以下行

        //InitializeComponent();

    }



    [WebMethod]

    public string HelloWorld() {

        return "Hello World";

    }

    [WebMethod]

    public int result(int num)

    {

        return num;

    }

}

可以有很多个 [WebMethod],但是每个webMethod只对它下面的方法起作用,就是说如果一个方法上没有[WebMethod],那么它将不能被外界调用

我们可以通过浏览WebService.asmx来试试我们的方法是否有用




调用即可得到以下结果



但是当有参数的时候,就像result,就直接进入以下



我们需要输入完参数才可以调用

Copyright © 2005 - 2016 flyso.cn. 飞搜 版权所有 鄂ICP备11002783号-3