src/httpInterceptor.js
export default httpEtagInterceptorFactory
function httpEtagInterceptorFactory () {
function responseInterceptor (response) {
var itemCache = response.config.$$_itemCache
if (itemCache) {
var cacheInfo = itemCache.info()
var cacheResponseData = cacheInfo.cacheResponseData
var etag = response.headers().etag
var cacheData = {}
if (etag) {
cacheData.etagHeader = etag
if (cacheResponseData) cacheData.responseData = response.data
itemCache.$set(cacheData)
}
delete response.config.$$_itemCache
}
return response
}
return {
response: responseInterceptor
}
}