• jQuery.ajax 调用 服务(.aspx,.asmx)


    方法1:Post(json)+IIS下;//aspx,适用本机

            $.ajax({
                url: "TpgConnect_Rain/postgreService.aspx/getRainInfo",
                type: "POST", //使用Post方式请求
                contentType: "application/json;charset=utf-8",
                data: "{}", //这里是要传递的参数,格式为 data: "{value1:'心想事成',i:10}"
                dataType: "json",
                success: function (result) {
                    datas_rain = JSON.parse(result.d);
                    alert(datas_rain);
                },
                error: function (x, e) {
                    alert("error:" + x.responseText);
                }
            });
    

    方法2:Get(jsonp);//aspx,可解决跨域  

            $.ajax({
                url: "http://10.19.1.54/TpgConnect_Rain/postgreService.aspx/getRainInfo?method=rain",
                type: "GET", //使用GET方式请求
                dataType: "JSONP",
                jsonp: "callback",
                data: "{}",
                success: function (result) {
                    datas_rain = JSON.parse(result);
                    alert(datas_rain);
                },
                error: function (x, e) {
                    alert("error:" + x.responseText);
                }
            });
    

    方法3:XMLHttpRequest;//aspx,传统方式

            var xmlhttp = new XMLHttpRequest();
            window.onload = function () {
                var url = "http://localhost/TpgConnect/postgreService.aspx?method=rain";
                xmlhttp.open("post", url, true);
                xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                xmlhttp.onreadystatechange = updatePage;
                xmlhttp.send(null);
            }
    
            function updatePage() {
                if (xmlhttp.readyState == 4) {
                    if (xmlhttp.status == 200 || xmlhttp.status == 0) {
                        alert(eval(xmlhttp.responseText)[0].stationno);
                    }
                    else
                        alert(xmlhttp.status);
                }
            }
    

    方法4:Post(json)+IIS下;//asmx,适用本机 

            $.ajax({
                type: "POST",
                contentType: "application/json;charset=utf-8",
                url: "WebService.asmx/GetWish",
                data: "{value1:'心想事成',value2:'万事如意',value3:'牛牛牛',value4:2009}",
                dataType: "json",
                success: function (json) {
                    alert("success" + json.d);
                },
                error: function (x, e) {
                    alert("error" + x.responseText);
                }
            });
    
    说明:
    1)尽量使用post,无参时:data: "",将返回xml格式;data: "{}",将返回json格式
    2)get参数有中文时需要编码,而post不需要
     
    附:
            /* ASP.NET服务源码(aspx)*/
            protected void Page_Load(object sender, EventArgs e)
            {
                Response.AddHeader("Access-Control-Allow-Origin", "*");
                string result = "";
                var val1 = Request.QueryString["val1"];
                var val2 = Request.QueryString["val2"];
                var val3 = Request.QueryString["val3"];
                var callback = Request.QueryString["method"];
                if (callback == "rain")
                    result = getRainInfo();
                else if (callback == "pond")
                    result = getPondInfo();
                else if (callback == "snow")
                    result = getSnowInfo();
                Response.Write(result);
                Response.End();
            }
    
            /* WebService服务源码(asmx) */
            [System.Web.Script.Services.ScriptService]
            public class WebService : System.Web.Services.WebService
            {
                public WebService()
                {
                }
                [WebMethod]
                public string GetWish(string value1, string value2, string value3, int value4)
                {
                    return string.Format("祝您在{3}年里 {0}、{1}、{2}", value1, value2, value3, value4);
                }
            }
    

      

      

     

      

  • 相关阅读:
    Mac旧机「焕」新机过程记录
    Swift3.0-字符串和字符
    Swift3.0-基本运算符
    【规范建议】服务端接口返回字段类型与iOS端的解析
    【已解决】iOS11使用MJRefresh上拉加载结束tableView闪动、跳动的问题
    標準メッセージクラス
    BAPI:会計管理(FI&CO)
    BAPI:販売管理(SD)
    BAPI:生産管理(PP)
    BAPI:購買管理(MM)
  • 原文地址:https://www.cnblogs.com/lgx5/p/10528732.html
Copyright © 2020-2023  润新知