我有一个用PHP编写的REST API服务提供程序。我在Postman中成功测试了它,并在那里正常工作。
现在,我将为其准备API文档,并且正在使用Swagger UI3。我已对其进行正确设置,并且可以使用顶部的 Authorize (授权)按钮处理Authorization。
成功登录后,我希望端点设置并使用相应的Bearer令牌。但这不会发生,当我尝试任何端点时,REST服务器都会抱怨缺少授权头。我测试了网络流量,并且HTTP请求中没有令牌。
我的问题是,使用顶部的“授权”按钮成功登录后,如何在Swagger UI的标头中发送Bearer令牌?我应该采取什么步骤/过程来将终结点请求与令牌一起出现?
答案 0 :(得分:0)
我在.NET core
项目中使用了它,在启动文件中,我必须放置以下代码部分:
services.AddSwaggerGen(options =>
{
//authentication
var security = new Dictionary<string, IEnumerable<string>>
{
{"Bearer", new string[] { }},
};
options.AddSecurityDefinition("Bearer", new ApiKeyScheme
{
In = "Header",
Description = "Please insert JWT into field",
Name = "Authorization",
Type = "apiKey"
});
options.AddSecurityRequirement(security);
}