SORU
6 HAZİRAN 2013, PERŞEMBE


AngularJS IE Önbellek Önlemek için iyi bir Yol?

Ben taze veri olamaz sunucudan alınan olmak, bu yüzden şu anda/$ajax çağrıları yapmak için kaynak (bu durumda), ve IE önbelleğe servis aramaları kullanın. Rastgele bir sayı oluşturmak ve istek eklemek için googling tarafından bulduğum bir tekniği kullandık, YANİ veriler için önbellek gidecek.

Her istek için cacheKill ekleyerek daha iyi bir yolu var mı?

fabrika kodu

.factory('UserDeviceService', function ($resource) {

        return $resource('/users/:dest', {}, {
            query: {method: 'GET', params: {dest: "getDevicesByUserID"}, isArray: true }
        });

Kontrolör arıyor

$scope.getUserDevices = function () {
        UserDeviceService.query({cacheKill: new Date().getTime()},function (data) {
            //logic
        });
    }

CEVAP
15 Mayıs 2014, PERŞEMBE


posts küresel httpProvider $önbelleğini devre dışı bırakmak olabilir benim diğer: bir tarif

myModule.config(['$httpProvider', function($httpProvider) {
    //initialize get if not there
    if (!$httpProvider.defaults.headers.get) {
        $httpProvider.defaults.headers.get = {};    
    }    

    // Answer edited to include suggestions from comments
    // because previous version of code introduced browser-related errors

    //disable IE ajax request caching
    $httpProvider.defaults.headers.get['If-Modified-Since'] = 'Mon, 26 Jul 1997 05:00:00 GMT';
    // extra
    $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache';
    $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';
}]);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Showtime

    Showtime

    21 HAZİRAN 2006
  • the one am radio

    the one am r

    6 Mayıs 2006
  • xXGAMERrs_Xx

    xXGAMERrs_Xx

    31 Temmuz 2014