2016-05-05 36 views
1

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

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)); 
} 
}) 

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

+0

这可能对您有帮助[刷新或无效的缓存](http://stackoverflow.com/questions/17059569/how-to-refresh-invalidate-resource-cache-in-angularjs) –

+0

@GitaramKanawade Yup看到它。购买不能按预期执行。 –

回答

0

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

0

,你可以在这里阅读

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

$ HTTP响应不是默认

缓存,但如果你有特定的环境和需要防止任何缓存,你可以添加日期time to your request example

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)); 
}