2017-02-11 31 views
0

我繼承了一個在Microsoft Edge中無效的網站。當試圖使用ajax發佈請求時,我會得到403錯誤,CSRF令牌不匹配。這很奇怪,因爲我在每次頁面加載時更新它們。在查看服務器端的請求數據後,我注意到所有這些會話都正在創建。沒有cookie從客戶端發送,這將具有會話id-將具有匹配的CSRF令牌。Sails js會話不能與Microsoft Edge一起使用

這裏是請求的樣子:

$.ajax({ 
    url: '/main/doThing', 
    method: 'POST', 
    xhrFields: { withCredentials: true }, 
    data: {stuff: 3, _csrf: csrf}, 
}); 

而且cookie設置:

cookie: { 
    maxAge: 24 * 60 * 60 * 1000, 
    httpOnly: true, 
    secure: false, 
    path: '/', 
} 

結論我來是邊緣不發送會話cookie到服務器。

奇怪的部分是,這與我嘗試過的每個其他瀏覽器(Chrome,Firefox,Safari)都適用。那麼這是一個瀏覽器問題?我不會在Edge中阻止Cookie。

有沒有人遇到類似的問題?它可以修復嗎?還是有解決方法?

回答

0

不知道你是否曾經找到過解決方案。我有類似的問題,但他們似乎只有Edge 15開始。

如果您找到了解決方案,更新將會有所幫助。謝謝。

相關問題