gpt4 book ai didi

javascript - 使用 AngularJS 从 Apache2 服务器获取最新的 Json

转载 作者:行者123 更新时间:2023-12-03 10:04:56 25 4
gpt4 key购买 nike

我的 apache2 服务器上有一些json,并且我在 Controller 中获取数据,通常没有问题。有时,当我更新 json 时,我的应用程序似乎无法获取最新数据。我发现这是由浏览器的缓存引起的,当我清理它时,我的应用程序会看到最新的数据并且我的工作完美。我发现a similar problem但该解决方案似乎不适合我的情况。

我的 Controller :

myApp.controller("myController", ["$scope", "$http",  
function($scope,$http){

$http.get('http://localhost/myjson.json').success(function(data){

$scope.data=data;
console.log(data);
)}
}]);

在我的 html 中,我通常会执行以下操作:

<div class="example-class">{{data.justATest}}</div>

我问自己:

  • 有什么方法可以始终获取最新数据吗?(如果是,那么在 AngularJS 中如何做到这一点?)
  • 我的问题是由浏览器缓存引起的吗?(如果是,我该如何解决和避免它?)

提前致谢。

最佳答案

我用@TechM9iac的答案解决了这个post

正如他所说:解决方案是将表示时间戳或 session ID 的查询字符串添加到您的文件中。

因此,我可以通过在 $http.get() 调用中添加 ?r=<%= session.getId()% 来始终获取新鲜的 json,例如:

myApp.controller("myController", ["$scope", "$http",  
function($scope,$http){

$http.get('http://localhost/myjson.json
?r=<%= session.getId()%').success(function(data){

$scope.data=data;
console.log(data);
)}
}]);

因此,要回答我的问题,这肯定是浏览器的缓存故障,解决该问题的方法是将表示时间戳或 session ID 的查询字符串添加到我的文件中,以便始终强制浏览器获取最新数据。

关于javascript - 使用 AngularJS 从 Apache2 服务器获取最新的 Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30400731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com