簡體   English   中英

節點:錯誤:嘗試訪問 ASP.NET 核心應用程序時無法驗證第一個證書

[英]Node: Error: unable to verify the first certificate when trying to reach ASP.NET Core app

我在本地機器上運行了一個 ASP.NET Core 應用程序。 我正在嘗試通過我在 Node.js 中編寫的一些代碼來測試該應用程序。 在該代碼中,我使用的是 Axios。 以下代碼會生成一條錯誤消息:“無法驗證第一個證書”。 代碼是這樣的:

let result = await axios.get('https://localhost:5001/');

我在 SO 上看到了幾個解決方案,但是,沒有一個能解釋這個問題。 我不明白 1)什么是安全的(我們在這里處理證書)和 2)需要在哪里進行更改(即在 Node 應用程序或 ASP.NET 核心應用程序中,甚至雙方都進行更改)。

如何安全地允許 Node.js 訪問在我的機器上本地運行的 ASP.NET 核心應用程序?

謝謝!

ASP.NET Core 在安裝后將使用自簽名證書。 由於它是自簽名的,因此沒有理由信任它。 而且您需要手動信任它或抑制此錯誤。 (這意味着您在請求時需要接受不受信任的證書)

由於在生產環境中,您可以使用自己的證書,該證書可能來自 Let's encrypt 等受信任的提供商,您無需擔心這個問題。

問題:

  1. 什么是安全的(我們在這里處理證書)

HTTPS 的“安全”意味着它需要驗證服務器端證書始終是可信的。

  1. 需要進行更改的地方(即在 Node 應用程序或 ASP.NET 核心應用程序中,甚至雙方都進行更改)。

不,不需要改變任何東西。 只要相信自簽名證書就可以了。


要信任證書,請運行“dotnet dev-certs https --trust”(僅限 Windows 和 macOS)。

了解 HTTPS: https://aka.ms/dotnet-https

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM