ajax調用C# webapi接口

js ajax請求代碼:

$.ajax({
        // url: 'http://192.168.83.51:8025/handler/AutoDifferenceService.ashx',
        url: requestUrl,
        data: { 'cmd': 'autodifference', 'batchid': this.batchid },//傳參
        dataType: 'jsonp',
        jsonp: 'jsonpcallback',
        jsonpCallback: 'jsonpFn',//跨域訪問
        type: 'GET', // 類型
        timeout: 100000, // 超時
        // 請求成功
        success: function(data, status) {
        	console.log(data)
        },
        // 失敗/超時
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          console.log(textStatus)
        },
        success_jsonpCallback: function(data) {
          console.log(data)
        }
      })
      
function success_jsonpCallback(data) {
      alert('測試成功')
    },

webapi代碼:

public void ProcessRequest(HttpContext context)
        {
            try
            {
                string returnData = string.Empty; //返回數據
                string cmd = context.Request.Params["cmd"]; //獲得命令指令
                if (!string.IsNullOrEmpty(cmd))
                {
                    switch (cmd)
                    {
                        case "autodifference":
                            var entity = new AutoDifferenceEntity();
                            string batchid = context.Request.Params["batchid"].ToString();
                            int intResult = entity.AutoDifference(batchid, pictureid, type, picindex, strUserName);
                            entity.code = intResult.ToString();
                            returnData = JsonHelper.ObjectToJSON(entity);
                            string jsonp = context.Request["jsonpcallback"];
                            returnData = jsonp + "(" + returnData + ")";
                            break;
                    }
                }
                context.Response.ContentType = "application/json";
                context.Response.ContentEncoding = System.Text.Encoding.UTF8;
                context.Response.Write(returnData);
                context.Response.AddHeader("Access-Control-Allow-Origin", "*");//跨域訪問
            }
            catch (Exception exc)
            {
                context.Response.Write(exc);
            }
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章