zoukankan      html  css  js  c++  java
  • 客户端访问WebService

    服务器端释放WebService方法
    •编写一个普通的ASP.NET WebService
    •为WebService类添加自定义属性标记
    –ScriptServiceAttribute
    •释放WebService方法
    –访问级别为public
    –使用WebMethodAttribute进行标记
    •为页面中的ScriptManager(Proxy)引入asmx文件

    客户端访问WebService
    •[Namespaces.]ClassName.MethodName
    •依次传入参数
    •传入一个方法做为成功后的回调函数
    •即使没有返回值也会调用回调函数

    客户端访问WebService基础
    aspx
        <form id="form1" runat="server">
            
    <asp:ScriptManager ID="ScriptManager1" runat="server" ScriptMode="Debug">
                
    <Services>
                    
    <asp:ServiceReference Path="WebServiceFoundation.asmx" InlineScript="true" />
                
    </Services>
            
    </asp:ScriptManager>
            
            
    <input type="button" value="Get Random" onclick="getRandom()" />
            
    <input type="button" value="Get Range Random" onclick="getRandom(50, 100)" />
            
            
    <script language="javascript" type="text/javascript">
                function getRandom(minValue, maxValue)
                {
                    
    if (arguments.length != 2)
                    {
                        Sample.WebServiceFoundation.GetRandom(getRandomSucceeded);
                    }
                    
    else
                    {
                        Sample.WebServiceFoundation.GetRangeRandom(minValue, maxValue, getRandomSucceeded);
                    }
                }
                
                function getRandomSucceeded(result)
                {
                    alert(result);
                }
            
    </script>
        
    </form>

    cs
        protected void Page_Load(object sender, EventArgs e)
        {

        }

    WebServiceFoundation.asmx
    <%@ WebService Language="C#" Class="Sample.WebServiceFoundation" %>

    using System;
    using System.Web;
    using System.Web.Services;
    using System.Web.Services.Protocols;
    using System.Web.Script.Services;

    namespace Sample
    {
        [WebService(Namespace 
    = "http://tempuri.org/")]
        [WebServiceBinding(ConformsTo 
    = WsiProfiles.BasicProfile1_1)]
        [ScriptService]
        
    public class WebServiceFoundation : System.Web.Services.WebService
        {
            [WebMethod]
            
    public int GetRandom()
            {
                
    return new Random(DateTime.Now.Millisecond).Next();
            }

            [WebMethod]
            
    public int GetRangeRandom(int minValue, int maxValue)
            {
                
    return new Random(DateTime.Now.Millisecond).Next(minValue, maxValue);
            }
        }
    }
  • 相关阅读:
    课后作业
    使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数。请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象?”。
    课程作业·02
    课程作业01
    课程作业02 将课程中的所有动手动脑的问题以及课后实验性的问题,整理成一篇文档。
    课程作业01 模仿JavaAppArguments.java示例,编写一个程序,此程序从命令行接收多个数字,求和之后输出结果。
    《大道至简》第一章伪代码
    Vue2.0版英雄联盟助手,我的第一个小开源项目
    二级下拉菜单的三种实现方法——CSS 、JS、 jQuery
    关于清除浮动 and position的一些注意点
  • 原文地址:https://www.cnblogs.com/timy/p/1172839.html
Copyright © 2011-2022 走看看