我正在使用需要通知系统(类似于 Facebook 通知)的 Asp.net 开发 webapp,我正在考虑使用 Comet。但我也想缓存服务器响应,因此对于每个浏览器实例,我不需要将请求发送到服务器。
我正在考虑的方式是使用cookies作为中间存储来缓存数据和标记响应时间,所以当有请求时,它首先检查这个时间戳,如果它过期然后设置一个锁并将请求发送到服务器和更新缓存的数据。
除了使用 cookie 之外,还有什么可以实现的功能吗?
我正在使用需要通知系统(类似于 Facebook 通知)的 Asp.net 开发 webapp,我正在考虑使用 Comet。但我也想缓存服务器响应,因此对于每个浏览器实例,我不需要将请求发送到服务器。
我正在考虑的方式是使用cookies作为中间存储来缓存数据和标记响应时间,所以当有请求时,它首先检查这个时间戳,如果它过期然后设置一个锁并将请求发送到服务器和更新缓存的数据。
除了使用 cookie 之外,还有什么可以实现的功能吗?
您可以使用html5 localstorage。
大多数现代浏览器,包括基于手机的浏览器都支持它。
// Store value on the browser beyond the duration of the session
localStorage.setItem('key', 'value');
// Retrieve value (works even after closing and re-opening the browser)
alert(localStorage.getItem('key'));
也就是说,像 facebook 这样的网站上的通知经常变化,而且数据量很小。您可能不会从缓存中获得太多优势。