文章目錄
- 前言
- 一、配置方法
- 二、使用
- 1、運行應用程序并導航到 /swagger
- 2、點擊右上角的 Authorize 按鈕。
- 3、輸入 JWT 令牌,格式為 Bearer your_jwt_token。
- 4、后續請求將自動攜帶 Authorization 頭。
- 三、注意事項
- 總結
前言
配置Swagger支持JWT
一、配置方法
- 在 Program.cs 的 Swagger 配置部分添加安全定義和需求:
builder.Services.AddSwaggerGen(c => {c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });// 添加 JWT 認證配置var securityScheme = new OpenApiSecurityScheme{Name = "Authorization",Description = "JWT Authorization header using the Bearer scheme.\r\nExample:'Bearer fadffdfadfds'",In = ParameterLocation.Header,Type = SecuritySchemeType.ApiKey,Scheme = "bearer",BearerFormat = "JWT",Reference = new OpenApiReference{Type = ReferenceType.SecurityScheme,Id = "Authorization"}};c.AddSecurityDefinition("Authorization", securityScheme);var securityRequirement = new OpenApiSecurityRequirement{{ securityScheme, new[] { "Bearer" } }};c.AddSecurityRequirement(securityRequirement); });
二、使用
1、運行應用程序并導航到 /swagger
- 如下圖:
2、點擊右上角的 Authorize 按鈕。
- 如下圖:
3、輸入 JWT 令牌,格式為 Bearer your_jwt_token。
- 如下圖:
4、后續請求將自動攜帶 Authorization 頭。
三、注意事項
- 令牌格式:輸入令牌時確保包含 Bearer 前綴和空格。
- 作用域配置:如需更細粒度的控制,可在 AddSecurityRequirement 中指定作用域。
- 生產環境:確保在生產環境中使用 HTTPS 并妥善保管密鑰。
總結
完成上述配置后,Swagger 將自動在請求頭中添加 JWT,方便在開發過程中測試受保護的 API 端點。