2012-10-04 39 views
0

我的Rails應用程序的ruby問題。 我的web應用程序保存緩存中的http響應數據,所以如果客戶端瀏覽器查看太多頁面,客戶端緩存會填充客戶端機器的內存!這是一個問題,因爲我的 應用程序顯示照片,所以任何頁面大約17KB,這對客戶端來說是一個問題,特別是如果這是一個移動設備!如何在Rails應用程序上禁用客戶端緩存Ruby on Rails應用程序

我該如何禁用客戶端緩存?

+0

通常情況下,你作爲一個Web開發人員不應該擔心瀏覽器緩存回吐內存太多。你有任何複雜的JavaScript或類似的東西,可能會導致過度使用內存? – Krumelur

+0

是的...我的應用程序顯示IPCam拍攝的照片序列。 有一個JavaScript函數可重新加載頁面上的圖像(以及其他數據,如created_at信息)。 因此,在顯示40-50之後,移動客戶端(桌面或智能手機)不在內存中! – Dabidi

+0

請確保不要在JavaScript代碼中保留對圖像的引用。如果圖像剛剛顯示在標記中,則瀏覽器應該正確管理其緩存。 – Krumelur

回答

0

我需要操縱與JavaScript的img。 現在系統是這樣的:

在第一頁

有第一個圖像標籤img的:在同一頁面

<img id="photo" src="data:image/jpeg;base64,<%= @data %>" alt="photo"> 

有這段JavaScript代碼; 的setInterval(更新1000)

 function update(){ 
     $.ajax({ 
      url: "LINK TO THE NEXT PHOTO"}) 
     }); 
     } 

Ajax請求調用者返回新代碼的照​​片的方法:

' $("#photo").attr('src', "data:image/jpeg;base64,<%= @data %>")