AngularJS - .Get请求缓存API输出

时间:2018-02-15 04:34:17

标签: angularjs ajax google-chrome

我有一个奇怪的问题。

我正在为AngularJS中的应用程序前端工作,我们修补了API的错误。但是,我的AngularJS调用仍然在修复之前获取API输出的旧数据。

如果我在chrome中浏览到那个API端点,我会得到正确的输出,但是,在我的应用程序的开发人员工具中查看网络选项卡时,响应是旧的。我试过重启chrome,我的电脑,api ......一切。我已清除并禁用了缓存。

当我重新启动chrome时,第一次加载应用程序时会获得正确的输出,但之后每次都会获得旧信息。

是否有某种我不知道的缓存?

1 个答案:

答案 0 :(得分:0)

尝试对您的请求,文件(Html和js)进行版本控制,在每次发布后更改版本,并且不要将time用于版本,它会破坏用户缓存,如果你更好使用date可以帮助您每天更新缓存而不是每次更新缓存。

  

使用version作为公共变量,帮助您从1个位置更改它。

重要 版本文件和请求以保持客户端的更新

var version = "0.0.1"; //change version after each publish
//do not use time to version, it's will destroy the user cache
$http.get("api/getUsers?v=" + version).then(function(response){
   //your data solved
})
//for your states and all files you have
templateUrl: "partials/index.html?v=" + version