jQuery 跨域访问解决原理案例详解

2020-05-27 18:15:12易采站长站整理

也可以说get方式的跨域是合法的,post方式从安全角度上,被认为是不合法的, 万不得已还是不要剑走偏锋..

client端跨域访问的需求看来也引起w3c的注意了,看资料说html5 WebSocket标准支持跨域的数据交换,应该也是一个将来可选的跨域数据交换的解决方案.

下面是实际springMVC的调用restful接口是的跨域问题解决:

1、URL请求以.jsonp结尾

http://www.test/find.jsonp

2、Jquery的Ajax请求如下:


$.ajax({
async:false,
url: url, //跨域的dns/document!searchJSONResult.action,
type: "GET",
dataType: 'jsonp',
jsonp: 'callback',
timeout: 5000,
beforeSend: function(){
//jsonp 方式此方法不被触发.原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了
},
success: function (json) {//客户端jquery预先定义好的callback函数,成功获取跨域服务器上的json数据后,会动态执行这个callback函数
myFunc(json);
},
complete: function(XMLHttpRequest, textStatus){
//$.unblockUI({ fadeOut: 10 });
},
error: function(xhr){
//jsonp 方式此方法不被触发.原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了
//请求出错处理
alert("请求出错(请检查相关度网络状况.)");
}
});

3、在myFunc方法中处理业务逻辑

以上所述是小编给大家介绍的jQuery 跨域访问解决原理案例详解的全部叙述,希望对大家有所帮助,如果大家想了解更多内容敬请关注软件开发网!