php - 允许session共享后,ajax请求产生了新的session_id
本文介绍了php - 允许session共享后,ajax请求产生了新的session_id的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
当前情况是:
直接访问 cd.xxx.com 产生的session_id 与 访问 www.xxx.com 产生的session_id是一致的
但是在cd.xxx.com中使用ajax请求www.xxx.com会产生新的session_id导致验证失败!
有没有办法处理?,先谢过了!
解决方案
这个问题属于Ajax跨域携带Cookie的问题,找了一篇博文的解决方案。
原生ajax请求方式:
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://xxxx.com/demo/b/index.php", true);
xhr.withCredentials = true; //支持跨域发送cookies
xhr.send();
jquery的post方法请求:
$.ajax({
type: "POST",
url: "http://xxx.com/api/test",
dataType: 'jsonp',
xhrFields: {withCredentials: true},
crossDomain: true,
})
服务器端设置:
header("Access-Control-Allow-Credentials: true");
header("Access-Control-Allow-Origin: http://www.xxx.com");
感谢原作者:
http://blog.sina.com.cn/s/blo...
这篇关于php - 允许session共享后,ajax请求产生了新的session_id的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文