如何以程式方式清空瀏覽器快取?
P粉419164700
P粉419164700 2023-08-01 12:05:53
0
2
674
<p>我正在尋找一種方法,以程式方式清空瀏覽器快取。我這樣做是因為應用程式快取機密數據,我想刪除那些當你按下「註銷」。這可以透過伺服器或JavaScript實現。當然,在國外/公共電腦上使用該軟體仍然是不鼓勵的,因為有更多的危險,例如鍵盤記錄器,你只是無法在軟體層面上擊敗。 </p>
P粉419164700
P粉419164700

全部回覆(2)
P粉990568283

瀏覽器不可能讓你清除它的快取。如果可能的話,這將是一個巨大的安全問題。這很容易被濫用——一旦瀏覽器支援這種“功能”,我就會把它從我的電腦上卸載。

你能做的就是告訴它不要快取你的頁面,透過發送適當的標題或使用這些元標籤:

<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>

您可能還想考慮關閉表單欄位上的自動完成,儘管恐怕有一種標準方法可以做到這一點(參見這個問題)。

無論如何,我想指出的是,如果您正在處理敏感數據,則應該使用SSL。如果您不使用SSL,任何可以存取網路的人都可以嗅探網路流量,並且輕鬆看到您的用戶看到的內容。

使用SSL也使一些瀏覽器不使用緩存,除非明確告知。看看這個問題。

P粉680487967

這是可能的,你可以簡單地使用jQuery替換引用快取狀態的「meta標籤」與事件處理程序/按鈕,然後刷新,很容易。

$('.button').click(function() {
    $.ajax({
        url: "",
        context: document.body,
        success: function(s,x){

            $('html[manifest=saveappoffline.appcache]').attr('content', '');
                $(this).html(s);
        }
    }); 
});

注意:此解決方案依賴於作為HTML 5規範的一部分實現的應用程式緩存,它還需要伺服器配置來設定應用程式快取清單。它沒有描述一種透過客戶端或伺服器端程式碼清除「傳統」瀏覽器快取的方法,這幾乎是不可能做到的。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!