在我的web應用程序,一些用戶抱怨說他們需要登錄方式過於頻繁,範圍從每幾個小時,每隔幾天。這些用戶總是在Safari上。所以Safari瀏覽器顯然對我的會話cookie和我的記憶我cookies有點奇怪。爲什麼Safari會忽略我的會話/記得我的cookies?
他們沒有與其他網站的問題,(據我所知),這個問題在過去幾個月開始,我沒有任何更新會影響它。我懷疑Safari的某些更新會導致它的行爲不同,但我不確定如何處理它,尤其是因爲我沒有在自己的計算機上安裝Safari,所以很難進行測試。
服務器爲節點/快遞,相關代碼
app.use(session({ // uses cookie connect.sid secret: process.env.SESSION_STORE_SECRET, store: mongoStore, maxAge: new Date(Date.now() + 3600000), resave: false, saveUninitialized: false })) app.use(passport.initialize()) app.use(passport.session()) app.use(passport.authenticate('remember-me'))
啊哈。我沒有真正看過代碼,因爲我沒有期望找到任何可以在其他瀏覽器中正常工作的東西。但我認爲maxAge的事情可能是問題。所以也許Safari瀏覽器對session
cookies沒有問題,但是與remember-me
系統玩起來很奇怪......而其他瀏覽器對後者的效果很好,因此我沒有注意到,因爲我沒有使用Safari。
我要刪除maxAge
線,因爲默認情況下沒有一個在所有這似乎是罰款。
Here's the site,如果你想檢查餅乾和諸如此類的東西。