【发布时间】:2016-09-09 21:20:33
【问题描述】:
早安,
我希望有人可以帮助我了解如何处理 304 响应。
我有一个网页,它通过使用 XMLHttpRequest 对象从 REST 服务获取数据来动态生成其内容,然后更新网页的内容。
目前,如果在 max-age 内再次请求数据,REST 服务会返回缓存数据和状态码 200,但它会变为不返回数据和 304 状态码。我自己做了一些快速测试,由于没有返回数据,我没有要显示的数据。所以我有点坚持这个过程是如何工作的。
我看到很多问题和答案解释了为什么以及何时应该使用 304,但在客户端代码中找不到如何处理 304。
希望有人能提供帮助。
【问题讨论】:
-
尝试在您调用的网址末尾添加一些随机数(例如:sample.com/myurl.php?randomnumber ... 这应该对您有所帮助。
-
你真的用
XMLHttpRequest做过测试吗?因为according to this answer,XMLHttpRequest 基本上应该将 304 个响应变成 200 个响应(通过更改状态码并返回缓存的响应)。这也是我在测试自己时得到的行为。 -
Frxstrem 是的,我确实使用 XMLHttpRequest 对象运行了测试,得到了 304 状态代码,而 .ResponseText 为空白。
-
salih0vicX 我已经尝试过在 url 末尾添加一个随机数,但这会使请求唯一,因此无论如何都不会被缓存。
标签: javascript rest xmlhttprequest http-status-code-304