如何删除使用AngularJS的HTML中的浏览器缓存?我在index.html中使用了以下内容。我也尝试在我的app.js中使用$templateCache
,但没有用。
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
app.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/login',{templateUrl: '/partials/login.html',controller:'loginCtrl'});
$routeProvider.when('/fingerprint',{templateUrl: '/partials/fingerprint.html',controller:'fingerprintCtrl',resolve: {
factory: checkRouting
}});
$routeProvider.otherwise({redirectTo: '/login'});
}]).
run(function($templateCache) {
$templateCache.removeAll();
});
var checkRouting= function ($q, $rootScope, $location,$http) {
if ($rootScope.loggedUser) {
return true;
} else {
var deferred = $q.defer();
$http.post("#/fingerprint", { userToken: "blah" })
.success(function (response) {
$rootScope.loggedUser = response.loggedUser;
deferred.resolve(true);
})
.error(function () {
deferred.reject();
$location.path("/");
});
return false;
}
};
任何帮助将不胜感激!
答案 0 :(得分:0)
如果它真的存储在浏览器的缓存中,则它与$templateCache
无关,因为Angular仅使用它来缓存模板。
也许在标题中检查服务器的缓存设置是否为静态*.html
。
顺便问一下,如何从浏览器中手动删除缓存页面?通过转储所有临时数据?
答案 1 :(得分:0)
在html中添加锚标记'Clear Cache'href =“javascript:location.reload(true)”