【问题标题】:Angularjs $http cache refreshAngularjs $http 缓存刷新
【发布时间】:2016-08-31 00:13:45
【问题描述】:

向数据库添加新数据后,我需要刷新缓存。

angular.module('app').factory('myService', function ($http,$cacheFactory) {

  var profileCache=$cacheFactory('profiles');

  //get list of items
  function getItem(){
   var request=$http({
     method:'get',
     url:domain+'/api/v1/items/list',
     cache:profileCache,
     params:{
       action:'get'
     }
   });
   return(request.then(response.data));
 }
// Post items
 function addItem(item){
   var request=$http({
     method:'post',
     url:domain+'/api/v1/items/add',
     data:item
   });
   return(request.then(response.data));
 }
})

我想在添加项目后刷新缓存,以便缓存可以有新的更改数据。

【问题讨论】:

标签: angularjs http caching


【解决方案1】:

你可以在这里阅读

https://docs.angularjs.org/api/ng/service/$http

$http 响应默认不缓存

但是如果您有特定的环境并且需要防止任何缓存,您可以在请求中添加日期时间 例子

function getItem(){
   var d = new Date();
   var n = d.getDate();
   var request=$http({
     method:'get',
     url:domain+'/api/v1/items/list?' + n,
     cache:true,
     params:{
       action:'get'
     }
   });
   return(request.then(response.data));
 }

【讨论】:

    【解决方案2】:

    var $httpDefaultCache = $cacheFactory.get('$http');

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-06
    • 2016-11-06
    • 2013-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多