我正在研究一個需要存儲用戶數據的擴展。爲此,我使用運行mysql數據庫的託管服務器。但是目前數據的添加或更改都會向託管服務器發出請求。如何將chrome.storage與遠程託管的數據庫一起用於Chrome擴展?
Chrome擴展程序提供了chrome.storage.local
API,適合存儲高達5MB的數據。我想利用此存儲API來減少對託管服務器的請求數量,並將其用作臨時存儲。
我打算使用chrome.storage.onChanged.addListener
和chrome.storage.local.getBytesInUse
檢查,如果存儲的數據超過某一閾值,然後只觸發一個Ajax請求到遠程服務器來保存數據。成功響應後,chrome.storage中的舊數據將被刷新。
但是有可能會丟失在服務器的請求/響應週期過程中創建的一些新數據。
如何防止數據丟失?有沒有其他解決方案來減少這個擴展對遠程服務器的請求數量的優化問題?
謝謝。
FWIW您可以添加''權限':[「unlimitedStorage」]'來克服5MB的限制。 – wOxxOm
@wOxxOm,我意識到這一點,但我也爲我們的擴展用戶顯示了他們保存的數據的Web界面。爲此,我必須將數據發送到託管服務器。所以,增加5MB的限制並不能完全解決我的問題。 –