2012-09-12 128 views
7

如何在Tornado中設置一個安全cookie,當瀏覽器關閉時過期?
如果我使用set_cookie我可以做到這一點,而無需傳遞額外的參數(我只是設置cookie),但如果我不得不使用set_secure_cookie龍捲風安全cookie過期(又名安全會話cookie)

我幾乎嘗試了一切:

  • 傳遞什麼:過期時間設置爲默認值,這爲1個月
  • 傳遞一個整數值:值被視爲天,即1指1天
  • 傳遞一個浮點值:它的工作原理,例如設定0.1就意味着將近一個半小時
+0

他們似乎有一個類似的接口和(除了編碼值)相同的實現。你有什麼嘗試? –

+0

我嘗試了一切:調用set_secure_code無參數,整數值,浮點值(0.001,它工作順便說一句)。 –

+0

我建議你在你的問題中加上這一點 - 這樣幫助你就容易多了,而且更多的人可能有興趣幫助表明他們已經付出努力的人,而不是隻要他們一問就問不知道該怎麼辦。在你的問題中寫下你的嘗試,你的期望以及實際結果。 –

回答

10

在我看來,你是真的在正確的軌道上。您嘗試更低和更低的值,並且cookie的到期時間越來越短。

通過expires_days=None使其成爲會話cookie(當瀏覽器關閉時會過期)。

+0

這是最簡單和最直接的解決方案,最重要的是它的工作原理。 –

+2

我已設置expires_days =無,但在瀏覽器關閉時cookie不會過期。你能否提示什麼可能會出錯。我在MemCache中存儲會話,如果它的任何幫助 – shailesh

+0

我不確定,但我認爲這expires_days =無技巧取決於瀏覽器錯誤工作... – AlexChaffee