Angular $http 回调不适用于 Chrome 中的 HTTP 304

Angular $http callbacks not working for HTTP 304 in Chrome

我遇到了 Angular 1.5 的问题,我无法通过 Google 找到类似的问题。一个可喜的变化,这个问题在 IE 中不存在,它只发生在最新版本 Chrome.

当我接近 JSON API 并且我连续两次发送相同的 GET 请求时,第一个请求 returns 是 200 OK 并且第二个returns一个304 NOT MODIFIED。我正在使用 'Cache-Control': 'no-cache' 执行请求以模拟我们的(生成的)API 客户端如何执行请求。使用缓存控制 enabled,两个请求都被正确执行(参见 F12)并且程序终止。在缓存控制 禁用 的情况下,两个请求都可以正确执行 (F12),但程序不会终止。

这是 Chrome 中的错误,还是 Angular 的 $http 中的错误,还是我遗漏了一些关键细节?

Minimal example on JsFiddle

输出:

Hi
Sending request 1 to http://jsonplaceholder.typicode.com/posts/1...
Success 1!
Resolved 1!
Sending request 2 to http://jsonplaceholder.typicode.com/posts/1...

在 Google Chrome 更新后修复。