Swashbuckle 5.6.0
进行ASP.NET Web Api 2和OAuth2令牌身份验证。当我尝试使用SwaggerUI中的红色感叹号按钮授权使用[Authorize]
修饰的Controller操作时,我收到错误
unsupported_grant_typeSwaggerUI
提出GET
请求获取令牌。在Postman
中,如果我使用所需的POST
向令牌端点发送Content-Type
请求,我会收到有效的令牌响应。如果我在邮差发送GET
请求它也不起作用,我得到
unsupported_grant_typeContent-Type "application/x-www-form-urlencoded"
。但是,我找不到任何方法在Swashbuckle中为令牌请求设置此Content-Type
(我可以使用IOperationFilters
为Controller操作成功设置标头)。那么,有什么方法可以通过Swashbuckle我可以配置SwaggerUI在针对OAuth2令牌端点时使用具有特定Content-Type标头的POST?
这取决于您是否具有1)真正的oAuth / OpenID实现,或2)'只是'控制器上的令牌端点和[授权]属性。
如果你有#2,那么SO answer is here会从你选择的令牌端点提示输入用户名和密码,并从apikey字段设置client_id(如果需要),this SO answer允许你在'apikey中粘贴一个Bearer令牌'领域。
如果你有#1那么你必须确保你知道你的'auth'和'token'端点并根据swashbuckle oauth2 documentation标记它们