數據 API 產生器 (DAB) 會針對使用命令行介面 (CLI) 的開發人員在本機執行。 DAB 會設定並執行 HTTP 和 HTTPS 端點,而不需要額外的設定。 不過,在某些 .NET 8 案例中,DAB 可能無法正確執行 HTTPS 端點。 本文提供設定 HTTPS 端點的步驟。
必要條件
徵兆
當開發人員在本機環境中執行 DAB 時,有些使用者會看到類似下列的主控台輸出:
...
info: Azure.DataApiBuilder.Service.Startup[0]
Successfully completed runtime initialization.
info: Microsoft.Hosting.Lifetime[14]
Now listening on http://[::]:8080
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Development
...
注意
產生的 http://[::]:8080 是端點,但不是有效的 URL。
原因
對於執行 .NET 8 或更新版本的開發人員,HTTPS 端點需要 ASPNETCORE_URLS 正確設定環境變數。
解決方法
若要正確設定本機環境,請使用下列其中一種方法來設定 ASPNETCORE_URLS 環境變數。
解決方案 1:使用 .env 檔案設定環境變數
檔案 .env 是簡單的文本檔,會將環境變數儲存在機碼/值組中。 若要設定ASPNETCORE_URLS環境變數,請在檔案.env旁邊引進一個dab-config.json檔案,其中包含類似下列範例的內容:
SQL_CONNECTION_STRING={your-connection-string}
ASPNETCORE_URLS=http://localhost:5000;https://localhost:5001
解決方案 2:在您的作業系統中設定環境變數 (選擇性)
在 Windows 中將 ASPNETCORE_URLS 環境變數設定為 http://localhost:5000;https://localhost:5001 。
[Environment]::SetEnvironmentVariable("ASPNETCORE_URLS", "http://localhost:5000;https://localhost:5001", "User")
其他相關資訊
如果問題未解決,請在 data-api-builder 討論中提供意見反應或回報。