因为我之前一直使用的是jQuery的AJAX方法,所以对于XMLHttpRequests这方面我比较新手。但是现在我需要在Web Worker中工作,因此出于性能问题,我必须使用传统的XMLHttpRequest。
我正在尝试从jQuery重新构建缓存(cache)属性。如果应该禁用缓存,则添加以下内容:
xhr.setRequestHeader("Cache-Control", "no-cache");
如果我想强制缓存而不是防止缓存,我应该设置哪个头信息?
因为我之前一直使用的是jQuery的AJAX方法,所以对于XMLHttpRequests这方面我比较新手。但是现在我需要在Web Worker中工作,因此出于性能问题,我必须使用传统的XMLHttpRequest。
我正在尝试从jQuery重新构建缓存(cache)属性。如果应该禁用缓存,则添加以下内容:
xhr.setRequestHeader("Cache-Control", "no-cache");
如果我想强制缓存而不是防止缓存,我应该设置哪个头信息?
max-stale
。 根据RFC 7234:
max-stale
是一个请求指令,它表示客户端愿意接受超过其新鲜度寿命的响应。 如果给max-stale
赋值,则客户端愿意接受其新鲜度已超过指定秒数的响应。 如果没有分配给max-stale
任何值,则客户端愿意接受任何年龄的陈旧响应。
有许多头部可以设置以鼓励缓存,但它们(包括您错误使用的Cache-Control
)是必须由服务器发送而不是请求头部的响应头部。
其中一个使用Cache-Control的示例:
Cache-Control: max-age=3600