首页 新闻 会员 周边

请问大家在IE8中ajax跨域请求时,遇到这些问题了吗?你们是怎么解决的?

0
悬赏园豆:20 [待解决问题]

我用的是jquery框架的ajax请求,在chrome,FF中正常.

在IE中提示 拒绝访问.

对IE进行下图这样的设置后能正常访问:

但是不可能为每个客户的IE都这样去设置啊..

 


后来在网上找了一下,用XDomainRequest,但是用它时,就算加了xdr.withCredentials=true;还是不能将sesionID传给服务器.

用IE打开跟踪它的对象时,发现它没有这个属性,也没有设置请求头的方法..在网上找了很久,他们都是通过将sessionID放到请求的URL里做为查询字符串,然后在后台读取的.

 

可是后台接口中的方法太多,不想去一个个改.也不想改,改了之后移动端的代码也要做改动,工程量大.

 

问题总结如下:

1,用jquery的ajax,要对客户的IE手动进行设置.有什么办法可以绕过这步呢?js有没有可能设置浏览器选项?

 

2,用XDomainRequest,post请求中无法传递sessionID或cookie给服务器.除了用查询字符串,还有哪些办法?

 

3,问个题外话,jquery 中的$.ajax(...) 是用XMLHttpRequest来实现的吗?看它回调函数的名称很像.

 

现在IE8的使用率还是位居第2,不考虑它都不行啊..唉..很想知道大家在处理它的跨域请求时,都是怎么解决的..首次接触跨域,请多指教,谢谢了!

hexllo的主页 hexllo | 菜鸟二级 | 园豆:318
提问于:2015-08-11 18:11
< >
分享
所有回答(2)
0

jsonp

✎﹏ℳ๓₯㎕ღ | 园豆:1499 (小虾三级) | 2015-08-11 18:14

jsonp只支持get啊.也要改后台的方法..每个都加上collback.

在不改后台的前提下,还有哪些方法呢?

支持(0) 反对(0) hexllo | 园豆:318 (菜鸟二级) | 2015-08-11 18:15
0

你可以参考这篇文章中的跨域的几种方法:

js跨域

Jeffcky | 园豆:2789 (老鸟四级) | 2015-08-11 19:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册