2017-09-09 97 views
0

如果我使用res.cookie('TEST', 'Test content.').status(200).send('Cookie set.');設置cookie,我發現它在瀏覽器中設置正確。但是,在另一頁上,如果我做了res.clearCookie('TEST').status(200).send('Cookie cleared.');,我發現該cookie未被刪除。我想徹底刪除這個cookie。我無法刪除Express中的cookies

我也試過res.clearCookie('TEST', {path: '/'});無濟於事。

我包括cookie的解析器是這樣的:

const cookieParser = require('cookie-parser'); 
app.use(cookieParser(process.env.secret)); 

This is what I see when the cookie has been 'cleared' - it's not deleted.

上圖顯示了我看後的cookie被「清除」 - 但它實際上並未刪除。

我將不勝感激任何幫助,我可以得到。謝謝。

回答

1

服務器無法指示客戶端刪除特定的cookie。

它所能做的只是覆蓋cookie,使其值爲空,並設置一個已過期的有效日期(這正是res.clearCookie所做的),希望瀏覽器能夠採取暗示並實際刪除它。

就您而言,即使cookie已經過期,您的瀏覽器也不會因某種原因將其刪除。這不是Express可以解決的問題。