【发布时间】:2020-10-27 15:02:06
【问题描述】:
我正在开发一个使用 Angular 和 PWA 的项目,在此服务器上运行:
http://localhost:8080/heroes
我在另一台服务器上有一个 mongodb api:
http://localhost:3000/heroes
如您所见,URL 相同,但端口不同,在线时可以正常工作。但是当我切换到离线时,我希望它能够继续工作,因为服务器 api mongo 是 localhost,但它给了我这个错误:
{
"headers": {
"normalizedNames": {},
"lazyUpdate": null,
"headers": {}
},
"status": 504,
"statusText": "Gateway Timeout",
"url": "http://localhost:3000/heroes",
"ok": false,
"name": "HttpErrorResponse",
"message": "Http failure response for http://localhost:3000/heroes: 504 Gateway Timeout",
"error": null
}
也许在另一条路线上运行mongodb会起作用,我不知道,谢谢大家。
我将我的项目 angular pwa 添加到免费服务器以进行测试“heroes1234.000webhostapp.com”,在主页部分您可以测试 jsons api 获取,它适用于我的 localhost:3000/heroes,在网上很好,但不工作在离线模式下。谢谢
【问题讨论】:
-
使用 HTTPS URL 运行时,您的 PWA 是否通过 Chrome Lighthouse 工具作为有效的 PWA 传递?如果有问题,它通常会给出很好的提示。
-
它工作正常,我将我的项目测试升级到一个网址供您观看。看:角度 pwa:heroes1234.000webhostapp.com/home
-
所以当我尝试像这样从 api url 调用和 json 时-heroes1234.000webhostapp.com 它可以工作,但是当我尝试调用我的本地数据库时,mongo 可以工作,但只能在 ONLINE 中工作,我希望它可以工作离线,这就是我使用离线的原因,localhost:3000/heroes
-
HTTPS 是 PWA 要求
-
Localhost 被认为是“安全的”,因此在本地开发时无需使用 HTTPS。这个问题似乎更多地与 SW 不知道哪些 HTTP GET 调用缓存的事实有关。
标签: angular mongodb server progressive-web-apps