基于浏览器的远程资源缓存

时间:2012-07-11 12:19:30

标签: javascript rest caching browser

我的服务器上有两个REST-ful资源:

/someEntry/{id}
Response:
{
    someInfoAboutEntry: ...,
    entryTypeUrl: "/entryType/12345"
}

/entryType/{id}
Response:
{
    someInfoAboutEntryType: ...
}

entryTypeUrl用于从不同的URL获取有关此条目类型的其他数据。它将被绑定到每个条目附近的一些“详细信息”按钮。可以有很多(比方说100个)条目,而只有5种类型(因此大多数条目指向相同的entryTypeUrl

我正在构建一个Javascript客户端来访问这些资源。我应该将entryType结果缓存到我的Javascript代码中,还是应该依赖浏览器为我缓存数据并在每次用户点击“详细信息”按钮时发送XHR请求?

据我所知,这两种方法都应该可行。第二个(总是调度请求)将导致更清晰的代码。我应该坚持下去,还是有一点我不知道?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我绝对会让浏览器管理缓存,而不是自己编写自定义缓存层。

通过这种方式,您可以编写和维护更少的代码,并允许服务器(通过其HTTP标头)指示是否应该缓存响应。如果您编写自己的缓存代码,则会删除重新获取陈旧数据的功能 - 您可以从浏览器中免费获取该数据。