我有一個用C編寫的CGI應用程序。當我從html表單向cgi應用程序發佈POST(刪除數據)時,服務器上的操作被正確執行,但POST後沒有刷新頁面。它閃爍,但顯示未更新的頁面。然後我必須刷新瀏覽器才能看到正確更新的html頁面(顯示數據已被刪除)。HTML不更新?
這是網站服務器嗎? JavaScript的?或只是一個瀏覽器設置? (我用的GoAhead Web服務器,在C,JavaScript的,HTML和火狐狸CGI應用程序。)
任何幫助表示讚賞。
我有一個用C編寫的CGI應用程序。當我從html表單向cgi應用程序發佈POST(刪除數據)時,服務器上的操作被正確執行,但POST後沒有刷新頁面。它閃爍,但顯示未更新的頁面。然後我必須刷新瀏覽器才能看到正確更新的html頁面(顯示數據已被刪除)。HTML不更新?
這是網站服務器嗎? JavaScript的?或只是一個瀏覽器設置? (我用的GoAhead Web服務器,在C,JavaScript的,HTML和火狐狸CGI應用程序。)
任何幫助表示讚賞。
這是您的瀏覽器緩存正在玩弄你。
檢查您在頁面上看到的HTTP標頭,看看是否有任何關於緩存的內容,如果它是您的Web服務器導致緩存,否則它是瀏覽器。嘗試使用其他瀏覽器,或者讓網絡服務器發送負面過期日期的頁面。
是否確定要返回更新後的頁面以響應POST?
更新後的頁面位於客戶端的本地目錄中....然後顯示正確(但我必須手動打開瀏覽器刷新)我期望在POST後直接顯示新頁面。 – 2010-03-16 20:23:12
如果您使用的是Firefox,你需要安裝Firebug的插件,它會告訴你,如果你的頁面被緩存或正確的「網」面板從服務器檢索的時間。
否定過期日期是否會保證新的頁面? – 2010-03-16 20:21:50
查看標題,當有圖像時顯示「cache-Control:no-cache和Pragma:no-cache」雖然 – 2010-03-16 20:27:48
沒有此信息根據我的經驗,負面過期日期將導致頁面立即過期,即它不會被緩存在瀏覽器中。但我認爲這可能被認爲是黑客攻擊,我會首先查找問題的原因,看看它是否可以修復。 – adamse 2010-03-16 20:53:27