AngularJS のドキュメントによると、$resource サービスはキャッシングもサポートするようになりました。
cache – {boolean|Cache} – true の場合、GET リクエストをキャッシュするためにデフォルトの $http キャッシュが使用されます。それ以外の場合、$cacheFactory で構築されたキャッシュ インスタンスの場合、このキャッシュがキャッシュに使用されます。
したがって、$resource は次のように記述できます。
app.factory('myResourceWithCache', function($resource, $cacheFactory) {
var myCache = $cacheFactory('MyCache');
return $resource(apiBaseUrl + '/myservice/:id', {id: '@id'}, {
'get': { method:'GET', cache: myCache },
'query': { method:'GET', cache: myCache , isArray:true }
});
});
私が知りたいのは、次のことです。
- キャッシュ内のキーの名前は何になりますか? $http キャッシュの場合、key は service/api のパスですが、カスタム キャッシュを使用する場合も同じになりますか?
- カスタム キャッシュ (ここでは myCache) に独自にキー名を指定する方法はありますか
AngularJS のドキュメントと他のスタック オーバーフロー スレッドを試しましたが、これに対する答えが見つかりませんでした。助けてください。