ajax请求数据的代码:
$(function () {
???$.ajax({
???????url:url,//请求文件所在的url
???????type:"get",//请求的方式
???????success:function (data) {
???????????console.log(data);//返回的数据
???????}
???})
})
这样请求来的数据一般情况下都可以使用,但是有时候在从这个域名到另外一个域名请求数据时往往会出现所谓的跨域请求问题,
浏览器均默认开启了同源策略,它指Ajax请求所在的页面和被请求的页面在协议、域名、端口均相同才能被访问,否则会提示如下错误:
XMLHttpRequest cannot load xxxxxxx is not allowed by Access-Control-Allow-Origin.
那么在遇到这样的问题的时候怎么解决,jquery里提供了跨域请求的解决方式;
代码为:
$(function () {
???$.ajax({
???????url:url,//请求文件所在的url
type:"get",//请求的方式,
dataType:"jsonp",//数据的格式
jsonp:"callback",
???????success:function (data) {
???????????console.log(data);//返回的数据
}
???})
})
或者用:
jQuery.getJSON("url",function (result) {
???console.log(result);//返回结果
})
如果请求的是script,在使用上面的方法时将dataType的属性值改为"script";使用下面的方法时,则为
jQuery.getScript("url",function (result) {
???console.log(result);//返回结果
});
jsonp:"callback",
浅谈jquery中的ajax请求和跨域请求
原文地址:http://www.cnblogs.com/mark20170707/p/7464790.html