纸上得来终觉浅,绝知此事要躬行。

 

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

posted on 2015-05-05 09:02  JRoger  阅读(2888)  评论(0编辑  收藏  举报

导航