我正在创建一个Phonegap应用程序,用于检查本地JSON是否是最新的,将其与上一个远程版本进行比较。如果远程版本比本地版本新,则程序将更新本地JSON。
为避免带宽浪费,我想在不下载整个远程数据的情况下进行版本检查。只是检查标题......我猜...... 寻找解决方案我发现有些人在this thread
中谈论“HTTP ETag标题”有人知道我怎么能在纯Javascript中实现类似的东西?
提前致谢。
答案 0 :(得分:1)
如果您的服务器发送正确的响应类型
304 - Not modified
您可以查看类似此内容的更新
function hasUpdate(url, callback)
{
var http = new XMLHttpRequest();
http.open('HEAD', url);
http.onreadystatechange = function() {
if (this.readyState == this.DONE) {
if (this.status === 200) {
// Data is new -- maybe do another request and grab a copy?
} else if (this.status === 304) {
// Data is not modified
} else {
// Something else happened.
}
}
};
http.send();
}