状态 0,StatusText:未知错误,名称:HttpErrorResponse

Status 0, StatusText: Unknown Error, Name: HttpErrorResponse

使用 VSC、Angular 11 和 node/Express API 进行本地主机开发,使用 self-signed OpenSSL 证书。我能够解决所有问题,包括 Postman 和独立 Chrome,请参阅 my answer of this SO 中的详细信息,除非 Angular 总是调用 API https://localhost:3001/whatever得到标题中的错误。 (邮差和独立 Chrome 工作)

F12,网络显示它不是我在 Angular 和节点上的代码,它是证书。

我的launch.json:

"configurations": [
    {
        "name": "Attach to a running Chrome @4200",
        "type": "pwa-chrome",
        "request": "attach",
        "port": 9222,
        "urlFilter": "https://localhost:4200/*",
        "webRoot": "${workspaceFolder}"
    },
    {
        "type": "chrome",
        "request": "launch",
        "name": "F5 against localhost",
        "port": 4201,
        "url": "https://localhost:4200",
        "webRoot": "${workspaceFolder}"
    }
]

为什么我有两个条目?应用正在使用第 3 方身份验证,例如 Google。在弄清楚如何使用 F5 进行调试之前,我总是收到“无法登录。您的浏览器不安全。试试……”。 Attachpwa-chrome 是我的解决方案。后来我想出了为F5使用旧版Chrome。

VSC 关于:

Version: 1.57.1 (user setup)
Commit: 507ce72a4466fbb27b715c3722558bb15afa9f48
Date: 2021-06-17T13:28:07.755Z
Electron: 12.0.7
Chrome: 89.0.4389.128
Node.js: 14.16.0
V8: 8.9.255.25-electron.0
OS: Windows_NT x64 10.0.19041

独立 Chrome 是 91.0.4472.114

原来按 F5 调出的 Chrome 并没有在独立模式下已经设置的设置。因此,只需 chrome://flags/#allow-insecure-localhost 并启用它。