From 34f9b623b2dd5ebca88463081572093fa51b243b Mon Sep 17 00:00:00 2001 From: claw_bot Date: Wed, 11 Mar 2026 16:18:30 +0000 Subject: [PATCH] =?UTF-8?q?P0=20=E5=AE=9E=E7=8E=B0=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=A0=A1=E9=AA=8C=EF=BC=9A=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=E5=BF=85=E5=A1=AB=E7=8E=AF=E5=A2=83=E5=8F=98=E9=87=8F=EF=BC=8C?= =?UTF-8?q?=E7=BC=BA=E5=A4=B1=E5=88=99=E5=90=AF=E5=8A=A8=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AssetManager.API/Program.cs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/AssetManager.API/Program.cs b/AssetManager.API/Program.cs index 946ac26..f54dd26 100644 --- a/AssetManager.API/Program.cs +++ b/AssetManager.API/Program.cs @@ -6,6 +6,9 @@ using System.Text; var builder = WebApplication.CreateBuilder(args); +// 校验必填环境变量 +ValidateRequiredEnvironmentVariables(); + // 初始化SqlSugar配置 AssetManager.Data.SqlSugarConfig.Initialize(builder.Configuration); @@ -134,3 +137,33 @@ app.UseAuthorization(); app.MapControllers(); app.Run(); + +/// +/// 校验必填环境变量,启动时检查,缺省直接报错 +/// +void ValidateRequiredEnvironmentVariables() +{ + var requiredVars = new List + { + "JWT__SecretKey", + "JWT__Issuer", + "JWT__Audience", + "ConnectionStrings__DefaultConnection", + "Tiingo__ApiKey" + }; + + var missingVars = new List(); + foreach (var varName in requiredVars) + { + var value = Environment.GetEnvironmentVariable(varName); + if (string.IsNullOrEmpty(value)) + { + missingVars.Add(varName); + } + } + + if (missingVars.Any()) + { + throw new Exception($"启动失败,缺失必填环境变量:{string.Join(", ", missingVars)}"); + } +}