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);
}
}