天天看点

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

什么是web service?

     WebService也叫XML Web Service WebService,是一种可以接收从Internet或者Intranet上的其它系统中传递

过来的请求的技术。

     Webservice 是一种分布式的调用服务,多个客户端可以通过web配置来调用发布的服务。

     Webservices是建立可互操作的分布式应用程序的新平台。它向外界暴露出一个能够通过Web进行调用的API。也

就是说,你能够用编程的方法通过Web来调用这个应用程序。

     WebServic 很重要,但不被经常使用,它更多的是一种分布服务的方式,所以对它了解就好了。

工作原理:

     Web 服务端提供的是服务或功能,继面向对象后,面向服务形成了新的特色。例如请求天气预报服务,如今很

多手机、小网站等小成本的经营者都可以进行天气的预报,这是因为气象站将天气的预报的服务发布了出去,只要符

合一定条件就都可以调用这个服务。简单说就是web服务就是一个URL资源,客户端可以调用这个服务。

     Web服务体系结构由三部分组成:服务提供者、服务绑定者、服务请求者。提供者将服务发布出去,请求者进行

服务请求,绑定者将两者相结合。

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

创建web service :

 步骤:1.在服务端创建web项目,并且添加web服务(.asmx文件)。并且在.asmx文件内写入方法A,最后发布或本 

         地浏览。

       2.在客户端创建web项目,添加服务引用—高级—添加web引用,在其中的URL地址中输入服务端发布的地址。

       3.在客户端的新建web网页中的代码页中,实例化添加的web引用后就可以调用服务端写的方法A。

创建服务端:

       打开VS 新建项目:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

      添加web服务:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

      服务端方法A代码:

namespace WebSerivceManager
{
    ///<summary>
    /// WebServiceDemo的摘要说明
    ///</summary>
    [WebService(Namespace ="http://tempuri.org/")]
    [WebServiceBinding(ConformsTo =WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX从脚本中调用此 Web 服务,请取消注释以下行。
    // [System.Web.Script.Services.ScriptService]
    public class WebServiceDemo : System.Web.Services.WebService
    {
        //web服务自带的方法
        [WebMethod]
        public string HelloWorld()
        {
            return "HelloWorld";
        }
 
        [WebMethod]
        //创建新的方法SupStar
        public string SupStar(String User)
        {
            return User + ":恭喜你成功调用服务端发布的supstar方法";
        }
    }
}
           

    发布成功可见:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

创建客户端:

         新建项目:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

      添加web引用:(添加服务引用—高级—添加web引用)输入URL:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

  客户端新建网页,写入简单代码:

<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
    <title></title>
</head>
<body>
    <formid="form1" runat="server">
    <div>
        <asp:LabelID="Label" runat="server" Text="姓名:"></asp:Label>
        <asp:TextBoxID="shuru" runat="server" Width="343px"Height="41px"></asp:TextBox>
     </div>
        <br>
        <br>
     <div>
        <asp:ButtonID="Button" runat="server" Text="调用"/>
        <asp:TextBoxID="xianshi" runat="server" Height="41px"Width="351px"></asp:TextBox>
     </div>
    </form>
</body>
</html>
 
           

新网页对应的代码页:

namespace WebSerivceClient
{
    public partial class WebDemoClient : System.Web.UI.Page
    {
     
        protected void Button_Click(object sender, EventArgs e)
        {
            //实例化服务引用
            WebSerivceDemo.WebServiceDemo web =new WebSerivceDemo.WebServiceDemo();
            //获取输入框的字符
            string user = this.shuru.Text;
            //赋值给显示框
            this.xianshi.Text =web.SupStar(user);
        }
    }
}
           

效果:

Web Service 创建学习 什么是web service?工作原理:创建web service :总结:

总结:

    对于web Service 的初学者来说,难点在于客户端对服务引用的实例化,如何在客户端去调用到发布的服务是关

键。自己在第一次创建的时候都不知道去实例化哪一个对象,迷糊的不妨跟着创建过程走一遍,一遍就清除了。

    另外web Service 感觉和WCF很类似,都是发布服务然后客户调用,那么这两者之间有什么联系呢,请坐等下次

分析。

继续阅读