码迷,mamicode.com
首页 > Web开发 > 详细

angularjs 缓存

时间:2017-08-11 13:27:06      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:logo   factory   cti   class   json   log   miss   ima   http   

 

设置缓存请求的数据:只有请求URL不变,就不会重新发请求

技术分享

 

设置带定时时间的缓存:

 

.factory(‘cacheInterceptor‘, [‘$cacheFactory‘, ‘$timeout‘, function($cacheFactory, $timeout) {
  var ttlMap = {};
  return {
    request: function(config) {
      if (config.ttl) {
        var ttl = config.ttl;
        delete config.ttl;
        config.cache = true;

        // If not in ttlMap then we set up a timer to delete, otherwise there‘s already a timer.
        if (!ttlMap[config.url]) {
          ttlMap[config.url] = true;
          $timeout(ttl)
          .then(function() {
            $cacheFactory.get(‘$http‘).remove(config.url);          
            delete ttlMap[config.url];
          });
        }
      }
      return config;
    }
  };
}])
.config([‘$routeProvider‘, ‘$httpProvider‘, function($routeProvider, $httpProvider) {

  $httpProvider.interceptors.push(‘cacheInterceptor‘);
$http.get(‘/permissions.json‘, {timeToLive: Constant.timeToLive}).then(function(result){
.constant(‘Constant‘, {
  url: {
    logout: ‘/auth/logout‘
  },
  timeToLive: 60*60*1000
})

 

angularjs 缓存

标签:logo   factory   cti   class   json   log   miss   ima   http   

原文地址:http://www.cnblogs.com/web-fusheng/p/7344608.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!