Jquery 使用JSOPN实例

1.说明

dataType:返回的数据类型

jsonp:传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)

jsonpCallback:自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据

success:调用成功执行的函数

error:异常处理函数,此处异常只能捕捉客户端异常,但不能捕捉服务器端异常

2.实例一

客户端代码

/*
* JSONP 数据格式传输支持跨域,且浏览器兼容,但是只支持Get方式请求
*
*/
$.ajax({
    url: 'http://localhost:56088/jsonpone/TestOne',
    data: {},
    dataType: 'jsonp',
    success: function (data) {
        console.info(data);
        alert(data.name);
    },
    error: function (xhr, status) {
        alert(status);
    }
});

服务代码MVC:

public ActionResult TestOne()
{
    string callback = Request.QueryString["callback"];
    string json = "{'name':'张三','age':'20'}";
    string result = string.Format("{0}({1})", callback, json);
    return Content(result);
}

请求参数:

服务器相应结果:

3.实例2,带参数请求

客户端代码:

$.ajax({
    type: "post",
    url: 'http://localhost:56088/jsonpone/TestTwo',
    data: {
        name: '张三'
    },
    dataType: 'jsonp',
    success: function (data) {
        console.info(data);
        alert(data.name);
    },
    error: function (xhr, status) {
        alert(status);
    }
});

服务端代码:

public string TestTwo(string name)
{
    object person = new { name = name, age = 101 };
    string callback = Request.QueryString["callback"];
    string json = person.ToJsonString();
    return string.Format("{0}({1})", callback, json);
}

请求参数:

相应结果:

原文地址:https://www.cnblogs.com/tianma3798/p/5092079.html