當用戶刷新我的頁面時,我想刪除查詢字符串(不是更改值,但完全刪除它),可能會在刷新實際發送到服務器之前存在。我這樣做是爲了我的網絡應用程序的用戶節省時間。刷新前查詢字符串刪除
從外觀上看,我可以捕獲頁面在客戶端以某種方式被刷新,與beforeunload
事件。現在,在這個事件中,我可以刪除查詢字符串,只需刷新到我的頁面而無需任何查詢字符串?
[編輯] 如果查詢字符串param存在,服務器將使用該數據來查詢數據庫並返回數據。如果它不存在,它不會這樣做。應用程序將數據存儲在本地存儲中。其中一部分數據是一個guid字符串,該ID是該應用程序的瀏覽器本地存儲的ID。我可以將其同步到服務器數據庫。我也可以與某人分享。共享使用您的guid字符串的查詢字符串ID向他們發送URL。當他們點擊鏈接時,查詢會查詢數據庫,然後將數據發回給您的朋友設備,以便本地存儲以供他們查看。如果他們刷新頁面,它會再次執行。因爲JavaScript會確保數據不會重複,但會變慢。我的99%客戶端應用程序永遠不需要刷新頁面上的查詢字符串。它應該只需要使用查詢字符串導航一次即可獲取該共享數據所需的數據。
因此,在一天結束時,這樣做只是爲了節省時間。它可以避免在服務器上重新查詢數據庫,並且不必重新處理客戶端數據。如果做到這一點並沒有害處,只是試圖提高效率。
你在查詢字符串中保存了哪些數據?你可以在客戶端忽略它嗎? – Stefan
不能在beforeunload中這樣做,因爲它只允許您返回一個字符串用於確認。如何在沒有參數的情況下首先刷新頁面,以便進一步刷新將是正確的? – techfoobar
爲什麼我想要這個更新後的帖子。 – user441521