關於Ajax提交後session裡面為空的問題
阿新 • • 發佈:2019-02-08
在專案裡面遇到這麼一個問題,當點選登入後把使用者資訊寫進session。但是問題就出現在ajax提交以後,並沒有實時的寫進sessio。所以導致無法在前端用<s:if test="#session.users!=null">判斷是否登入成功。於是上網找到了相關答案。
以下為引用:
仍定為跨域問題。 跨域本是出於安全考慮:同源策略即JavaScript或者Cookie只能訪問同域下的內容;也因為這個才會出現好多莫名其妙的問題。 提起跨域就能想到CORS(跨域資源共享,cross-origin resource sharing)可以讓AJAX實現跨域訪問。CORS允許一個域上的網路應用向另一個域提交跨域AJAX請求。 首先前端在ajax請求時新增 xhrFields: { withCredentials: true }, withCredentials值為真則是允許跨域名請求; 原始碼如下 $.ajax({ url:$rootScope.interfacePath+"checkpiccode/", dataType:"json", xhrFields: { withCredentials: true }, data:{mobile: mobile,code:tpyzm}, type:"get", success:function(data){ }, error:function(data){ console.error(data); } }); 後端需要利用CORS在一個域上新增標頭允許另一個域的請求訪問。 頭資訊設定如下: header(“Access-Control-Allow-Origin:允許訪問的域名”) 如果需要任何域來訪問可以設定為: header(“Access-Control-Allow-Origin:*”)
感謝這位仁兄 記錄一下 謝謝 原部落格地址:http://www.cnblogs.com/shludan/p/5552062.html