2015-04-21 104 views
0

如果我在谷歌瀏覽器中訪問https://www.google.se/,然後在末尾添加一個哈希標記,例如https://www.google.se/#,並在地址欄中按回車,但沒有任何反應,但如果我現在一次再次點擊輸入,而無需向網址添加任何內容Chrome會發出新的GET請求並再次導航至Google。谷歌瀏覽器發出新請求,如果URL不變

如果我在IE11中完全相同,則不會發送新請求。我可以按照我喜歡的次數進入。這就是我認爲它在所有瀏覽器中都能正常工作的原因。在Chrome中的效果導致我一個小問題。

我想這是Chrome選擇實現的方式,你必須忍受。在服務器端(ASP.NET MVC 4,C#)有沒有一種方法可以確定請求是否是用戶只關注地址欄並按回車鍵,或者用戶是否真正向頁面發出真正的新GET請求(比如有一個空白的地址欄並且第一次在URL中輸入)?

回答

0

如果你正在開發一個網絡應用程序,他們是沒有辦法做這樣的事情。

0

如果我正確理解您的問題並且您正在使用ASP.NET,那麼當用戶導航到頁面並保存它們導航的絕對路徑時,如果您創建了會話變量,那麼實現該功能將是最容易的。

Request.Url.AbsoluteUri 

這樣你可以檢查你的邏輯對來自同一地址的每一個進一步的請求,並檢查他們的URL是否改變。