javascript - js 跨域问题
问题描述
这个应该是跨域的问题,不过在谷歌,火狐,ie10+上都没有问题,在ie9-去出现问题,按说如果是跨域问题,都应该会有提示啊,不知道是是什么影响的?
$.ajax({url: ’//sh.uzai.com/ashx/ashx_ProductDetail.ashx?action=detail&pId=133689&_=1498273384086’,type: ’GET’,cache: false,dataType: 'Json',async:false,success: function (data) { if (data != undefined) {jsonCData = data.calendarValue;jsonPData = data.priceValue;jsonShowDiscount = data.showDiscount; }},error: function (msg) { debugger;} });
ie9-一直进入的是debugger,各位看看是什么原因
问题解答
回答1:ie8不支持cors
回答2:也可以用jsonp,和后台配置
回答3:IE8 和 IE9 虽然支持跨域,但并不是 CORS 的标准实现,而是依赖 XDomainRequest 对象的一个非标准实现(CanIUse),如果你使用的请求库没有对 IE8 和 IE9 进行特殊的兼容处理,而是使用 XMLHttpRequest 对象,那么是无法完成跨域请求的。如果要兼容 IE9,可以使用对应的 Polyfill 库。
另外值得注意的是,使用 XDomainRequest 对象进行跨域请求是有诸多限制条件的,例如只能发起 GET 和 POST 请求,不能修改请求头等,具体的限制可以参考这里。
回答4:另外,如果用jsonp处理的话,我看请求的时候报错,后台需要配置json吗?
相关文章:
1. javascript - js怎么判断input输入的值是数字,不小于等于0,不使用alert,而在同一行上用红色字体提示用户2. 腾讯地图小程序SDK,success返回的数据无法取出3. mysql - 请教一条sql4. javascript - 在js for in 循环中,使用数组的push方法获取对象的属性,结果却未改变数组5. mysql - 查询字段做了索引为什么不起效,还有查询一个月的时候数据都是全部出来的,如果分拆3次的话就没问题,为什么呢。6. 就一台服务器,mysql数据库想实现自动备份,如何设计?7. javascript - h5分享链接到qq或者微信时有一个缩略图还有一些说明文字,这个要怎么去修改里面的图片和内容?8. DADB.class.php文件的代码怎么写9. Win8资源管理器总是卡死该咋办?10. Mysql 关于 FOUND_ROWS() 和 ROW_COUNT() 函数