【发布时间】:2020-04-06 04:21:01
【问题描述】:
在一个 .NET Core 项目中,我添加了一个安全定义(底部的代码),它向页面添加了一个授权按钮,用户可以输入 api 密钥 - 一切正常。
是否可以在 URL 中指定 api 键,以便 Swagger 自动使用它而不必输入它?比如/swagger/index.html?authorization=0123456789 或者类似的东西。
现有代码:
services.AddSwaggerGen(c => {
...
c.AddSecurityDefinition("api key", new ApiKeyScheme() {
Description = "Authorization query string expects API key",
In = "query",
Name = "authorization",
Type = "apiKey"
});
var requirements = new Dictionary<string, IEnumerable<string>> {
{ "api key", new List<string>().AsEnumerable() }
};
c.AddSecurityRequirement(requirements);
});
似乎带有 authorization 参数的 URL 应该可以工作,但它没有。
附:使用 Swashbuckle 4.0.x
【问题讨论】:
标签: c# .net-core swagger swashbuckle