1

我最近开始使用 Restangular 向 RESTful 服务发出跨域请求,到目前为止一切正常。

但是对于 IE10,当它第一次发出 GET 请求时,它只会从服务器获取数据,而对于后续调用,它不会命中服务器,并且可能返回缓存的数据。我需要从服务器刷新数据。我尝试将 defaultHttpFields 缓存设置为 false,但没有运气。请帮忙!

谢谢,拉克希米

4

2 回答 2

1

我是 Restangular 的创造者。

你能举个例子吗?如果您没有在 defaultHttpfields 中将缓存设置为 true,Restangular 根本不应该缓存它。

您是否检查过请求是否在开发人员控制台的“网络”选项卡中发出?它在其他浏览器中是否有效?检查 RestangularResource 的 restangular 库,看看它是否在进行 $http 调用。

希望能帮助到你!

于 2013-07-05T22:22:25.963 回答
0

我也刚打了这个。似乎 IE10 特别热衷于缓存来自 RESTful 调用的结果。

我使用的一种解决方法是只为每个请求提供一些唯一值作为参数,然后 IE10 似乎很乐意不缓存它。我使用了以毫秒为单位的当前时间戳,因为我过去曾看到 jQuery 使用过类似的解决方法。

    var postsApi = Restangular.all("posts");
    $scope.allPosts = postsApi.getList({ nocache : new Date().getTime() });

现在工作。

于 2013-10-03T06:32:14.850 回答