angular Service Worker を介してマスター データ API をキャッシュできません。ほとんどの例では、dataGroup の URL が同じドメインにあることが示されているため、「/catalog」のみが機能しますが、API は別のドメインでホストされています。
http://x.com/api/catalogで入手できるとしましょう
以下はngsw-config.jsonです
{
"index": "/index.html",
"assetGroups": [{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html"
],
"versionedFiles": [
"/*.bundle.css",
"/*.bundle.js",
"/*.chunk.js"
]
}
}, {
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"resources": {
"files": [
"/assets/**"
],
"urls": [
"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"
]
}
}],
"dataGroups": [{
"name": "xyz",
"urls": ["http://x.com/api/catalog"],
"cacheConfig": {
"strategy": "freshness",
"maxSize": 15,
"maxAge": "1h",
"timeout": "5s"
}
}]
}