Rumah  >  Artikel  >  pembangunan bahagian belakang  >  允许session共享后,ajax请求产生了新的session_id

允许session共享后,ajax请求产生了新的session_id

WBOY
WBOYasal
2016-10-11 14:23:101204semak imbas

当前情况是:
直接访问 cd.xxx.com 产生的session_id 与 访问 www.xxx.com 产生的session_id是一致的
但是在cd.xxx.com中使用ajax请求www.xxx.com会产生新的session_id导致验证失败!
有没有办法处理?,先谢过了!

回复内容:

当前情况是:
直接访问 cd.xxx.com 产生的session_id 与 访问 www.xxx.com 产生的session_id是一致的
但是在cd.xxx.com中使用ajax请求www.xxx.com会产生新的session_id导致验证失败!
有没有办法处理?,先谢过了!

这个问题属于Ajax跨域携带Cookie的问题,找了一篇博文的解决方案。

原生ajax请求方式:

<code>var xhr = new XMLHttpRequest();  
xhr.open("POST", "http://xxxx.com/demo/b/index.php", true);  
xhr.withCredentials = true; //支持跨域发送cookies
xhr.send();</code>

jquery的post方法请求:

<code> $.ajax({
    type: "POST",
    url: "http://xxx.com/api/test",
    dataType: 'jsonp',
    xhrFields: {withCredentials: true},
    crossDomain: true,
})</code>

服务器端设置:

<code>header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Origin: http://www.xxx.com");</code>

感谢原作者:
http://blog.sina.com.cn/s/blo...

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn