欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - jquery ajax ie8下跨域cookie的问题

程序员文章站 2022-05-11 11:28:36
...
$.support.cors = true;
$.ajax({
    crossDomain:true,
    xhrFields:{
        withCredentials:true
    },
    data: {aa:"aa"},
    dataType:"json",
    type:"POST",
    ...
});

ie8下到底怎么处理?(jquery1.11.3,也用了相关的transport插件)
后端是php,已经做了crossDomain的设置,在主流浏览器下是ok的

回复内容:

$.support.cors = true;
$.ajax({
    crossDomain:true,
    xhrFields:{
        withCredentials:true
    },
    data: {aa:"aa"},
    dataType:"json",
    type:"POST",
    ...
});

ie8下到底怎么处理?(jquery1.11.3,也用了相关的transport插件)
后端是php,已经做了crossDomain的设置,在主流浏览器下是ok的

ie9及以下的XMLHttpRequest没有CORS的特性,所以 ie9 ie8会使用 XDomainRequest 来达到CORS的效果,而ie7及以下就完全无解了,自然 withCredentials 特性在IE9及以下的版本都不会有实现。
如果仅仅只是获取数据,可以考虑jsonp,提交数据的话就使用form提交到隐藏frame吧,如果跨了根域,那就比较无解了,实现方式很绕,需要在两边域名下都部署页面再通过window.name来做数据传递。
让客户升级浏览器吧~不要在低版本浏览器上浪费生命了