允許session共享後,ajax請求產生了新的session_id

WBOY
發布: 2016-10-11 14:23:10
原創
1203 人瀏覽過

當前情況是:
直接訪問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...

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板