客户端缓存(使用JavaScript)
我有一个API,我在客户端通过JS查询,然后在页面上显示结果(再次通过JS)。客户端缓存(使用JavaScript)
我有每秒5个查询的限制。在现实生活中,我可以在一个循环中最多发送11个API调用。
我需要的:
我需要以某种方式绕过查询11次的限制,因为通常我需要在一个循环中大约50个呼叫。
我需要确保我不会在每次刷新页面时发送相同的API请求。
显而易见的解决方案是缓存。为了符合速度要求,理想情况下,我想在客户端缓存数据。
问题:
如何?由于4KB的大小限制,我认为饼干不是一个好的解决方案。我听说过谷歌齿轮(他们用于Offline-Gmail),但最近的搜索结果显示它不再存在。
您可以使用localstorage,但前提是您需要在浏览器刷新之间保留缓存。如果你不这样做,那么你可以使用内存,如数组或结果。
我需要不仅在页面刷新之间存储数据,而且还需要一个月的时间:)本地存储听起来很有趣,但所有浏览器都支持这一点吗? – rinchik 2013-03-05 16:20:18
@rinchik只有现代浏览器支持它,因为它是html5功能,另一种解决方案是将其保存在服务器中的文件中,并在脚本启动时加载该文件。 – jcubic 2013-03-05 16:21:50
将window.name是一个可行的替代?我不确定安全发展是否阻碍了它,但我认为它有2MB的存储限制。 – user18477575 2013-03-05 16:43:34
谷歌齿轮贬值,因为它几乎所有的功能在本地支持现代浏览器。看看LocalStorage和SessionStorage API。我认为LocalStorage将满足您的需求。 – SWilk 2013-03-05 16:37:36