當您在註銷後點擊後退按鈕時,瀏覽器會從緩存中加載前一頁。爲了防止受保護的頁面被緩存,您必須設置以下標題爲this question
self.set_header('Cache-Control', 'no-cache, no-store, must-revalidate')
self.set_header('Pragma', 'no-cache')
self.set_header('Expires', '0')
描述你可以把在一個裝飾,是這樣的:
def protected(method):
@tornado.web.authenticated
@functools.wraps(method)
def wrapper(self, *args, **kwargs):
self.set_header('Cache-Control', 'no-cache, no-store, must-revalidate')
self.set_header('Pragma', 'no-cache')
self.set_header('Expires', '0')
return method(self, *args, **kwargs)
return wrapper
然後用@裝飾你的受保護的網頁保護而不是@ tornado.web.authenticated。
整潔!在被@Mutant指向後,我發現了自己的緩存控制。不過,你的答案似乎比我要做的要乾淨得多。 – magicpanda