Heim >Backend-Entwicklung >PHP-Tutorial >javascript - jquery ajax ie8下跨域cookie的问题

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

WBOY
WBOYOriginal
2016-06-06 20:22:371576Durchsuche

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

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

回复内容:

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

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

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn