5

我正在开发一个 angular v1.3 应用程序,并且我在我的一个控制器中使用 angular-poller 以每 2 秒自动发送请求以从我的后端获取新数据。

它在 Chrome 中运行良好,但在 IE11 中无法运行。但奇怪的是,我在使用IE11时使用Fiddler查看请求是否发出,我可以看到在IE 11上,如果打开开发工具窗口,则发送请求,并且我的应用程序可以正常工作,但是如果我不打开开发控制台,甚至不会发出请求,至少这是提琴手向我展示的。

    poller.get(myResourceService, { action: 'get',
                  argumentsArray: [{
                    id: $stateParams.id
                  }],
                  delay: '2000',
                  smart:true })
  .promise.then(null, null, function(result) {
    $scope.details= result;
  });

以上是我在控制器中的代码。这确实是一个烦人的问题,我已经花了几个小时。因此,任何帮助将不胜感激。

干杯

4

1 回答 1

4

我发现 IE 会缓存 AJAX 调用,当您使用 Fiddler/Development 工具时,它的行为会有所不同,即不缓存 AJAX 调用。为了解决这个问题,我通常在响应头中添加 Cache-Control 头并用“no-cache”填充它。

检查此链接以获取更多详细信息如何控制所有浏览器中的网页缓存?

于 2015-05-07T00:18:51.853 回答