AngularJS 中设置 AJAX get 请求不缓存的方法

var app = angular.module('manager', ['ngRoute']);

app.config(['$routeProvider', function($routeProvider) {
    $routeProvider
    .when("/index", {
            templateUrl: "/Templates/index.html",
            controller: IndexCtrl
        })
    .when("/search", {
            templateUrl: "/Templates/search.html",
            controller: SearchCtrl
    })
    .when("/baseSettings", {
            templateUrl: "/Templates/baseSettings.html",
            controller: BaseSettings
    })
    .when("/aboutTech", {
            templateUrl: "/Templates/aboutTech.html",
            controller: AboutTech
    })
    .otherwise({ redirectTo: "/index" });
}]);

app.config(["$httpProvider", function($httpProvider) {
    if( !$httpProvider.defaults.headers.get ) {
        $httpProvider.defaults.headers.get = {};
    }

    // 禁用 IE AJAX 请求缓存
    $httpProvider.defaults.headers.get['If-Modified-Since'] = 'Mon, 26 Jul 1997 05:00:00 GMT';
    $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache';
    $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';
}]);

参考:

http://stackoverflow.com/questions/16098430/angular-ie-caching-issue-for-http

你可能感兴趣的:(AngularJS)