我使用HTML 5歷史api來保存Ajax請求發生時的狀態,如果用戶請求同一頁面沒有ajax請求,我提供完整的html內容。「重新打開最後關閉的選項卡」導致顯示最後一個Ajax請求內容
瀏覽器的「重新打開最後關閉的選項卡」功能會將最後一個Ajax請求內容帶到服務器。如果瀏覽器請求不帶最後的請求內容,那麼一切都會毫無問題地工作。但瀏覽器只顯示最後的ajax請求內容。
我已經經歷過這個在Chrome 17,Firefox的10。(我還沒有嘗試過在IE9,因爲它不支持歷史API)
什麼是衆所周知的解決方案,這個問題?
編輯:這些ajax請求只是「獲取」請求到服務器。
真的不可能在jsfiddle.net中演示它,因爲幾個原因。您可以在下面的localhost中演示它。
向服務器發出「請求」請求,並拉動json對象,然後將該url推入歷史api中,如下所示。
history.pushState(null,null,url);
然後關閉該選項卡,然後單擊瀏覽器的「重新打開最後關閉的選項卡」功能。你看到了什麼 ? Json響應正文?瀏覽器顯示它沒有向服務器發出請求,對嗎?
任何人有一個想法? – Freshblood 2012-02-25 16:57:11
你可以發佈一些代碼,或鏈接到一個頁面來演示這個問題嗎? – robertc 2012-02-25 22:29:37
@robertc我更新了問題並提供了演示信息。 – Freshblood 2012-02-26 01:29:24