我遵循Michael Hartl的教程。如何在註銷後點擊瀏覽器的「返回」按鈕來登錄頁面?
當用戶登錄,然後註銷並點擊瀏覽器的後退按鈕,然後顯示用戶的主頁,這是我不想要的。我希望用戶在登錄後點擊瀏覽器的「返回」按鈕而不是登錄頁面時登錄頁面。
感謝名單! :)
我遵循Michael Hartl的教程。如何在註銷後點擊瀏覽器的「返回」按鈕來登錄頁面?
當用戶登錄,然後註銷並點擊瀏覽器的後退按鈕,然後顯示用戶的主頁,這是我不想要的。我希望用戶在登錄後點擊瀏覽器的「返回」按鈕而不是登錄頁面時登錄頁面。
感謝名單! :)
只需重定向登錄頁簽出按鈕並禁用瀏覽器後退按鈕。
基本上,您的瀏覽器正在緩存網頁,並且當前配置了rails以允許您這樣做。您將不得不在rails中手動指定您不希望發生頁面緩存。
請參考此link here.它應該正是你在找什麼。
基本上我的鏈接頁面告訴你做的是幾行添加到application_controller.rb
:
此:
before_filter :set_no_cache
和功能:
def set_no_cache
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
end
設我知道它是否有效。
嘿,我已經試過這個代碼了。它在這裏給出http://stackoverflow.com/questions/711418/how-to-prevent-browser-page-caching-in-rails我想,我做錯了事情因爲它爲大家工作。在application_controller.rb中添加此代碼後,我需要做什麼? –
這是我的application_controller.rb看起來像'類ApplicationController中
您在before_filters中忘記了'before_filter:set_no_cache'行。補充說,它應該工作。 –
如果我禁用「後退」按鈕,可以嗎?我的意思是,什麼行動將「返回」按鈕,然後在其他網頁上? –
這既不實際也不可能。首先,您[通過打破慣例引入最糟糕的做法](http://www.useit.com/alertbox/990530.html)(後退按鈕)對用戶沒有任何實際益處。其次,你忽略了**所有網絡命令都是建議**的事實。瀏覽器是否遵循它們取決於它們。如果用戶使用Lynx,該怎麼辦?它的'後退按鈕'不能被禁用,可以嗎? – BryanH