Angularjs 如何在Angular中创建$http缓存密钥?
当我在Angular JS中更新资源时,我试图删除一个特定的$http缓存项,但当我尝试使用URL作为键获取时,它返回Angularjs 如何在Angular中创建$http缓存密钥?,angularjs,http,caching,Angularjs,Http,Caching,当我在Angular JS中更新资源时,我试图删除一个特定的$http缓存项,但当我尝试使用URL作为键获取时,它返回null。我知道资源在缓存中,因为当我下次获取资源时,我得到的是旧的缓存值,而不是更新的值 var id = 'org.couchdb.user:gareth'; var changes = { ... }; $http.put('/_users/' + id, changes).success(function() { $cacheFactory.get('$http').
null
。我知道资源在缓存中,因为当我下次获取资源时,我得到的是旧的缓存值,而不是更新的值
var id = 'org.couchdb.user:gareth';
var changes = { ... };
$http.put('/_users/' + id, changes).success(function() {
$cacheFactory.get('$http').remove('/_users/' + id);
});
为什么缓存项没有被删除?正确的键是什么?通过角度源进行调试后,发现键已转义,因此在示例中,键应为
/\u users/org.couchdb.user%3Agareth
我更新了要使用的代码,例如:
有关如何构造键的更多信息,请查看中的buildUrl
函数
$http.put('/_users/' + id, changes).success(function() {
$cacheFactory.get('$http').remove('/_users/' + encodeURIComponent(id));
});