【发布时间】:2019-06-15 01:33:44
【问题描述】:
我创建了一个新的 Web Api 项目,添加了 Asp.Net Identity 并像这样配置了 OAuth:
OAuthOptions = new OAuthAuthorizationServerOptions
{
TokenEndpointPath = new PathString("/Token"),
Provider = new ApplicationOAuthProvider(PublicClientId),
AuthorizeEndpointPath = new PathString("/api/Account/ExternalLogin"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
AllowInsecureHttp = true
};
这一切正常,我可以调用 /Token 端点并取回不记名令牌。
问题是我认为这在 Swagger 中是不可发现的,因为它不在控制器上,因此没有为它生成 xml 文档。
有人知道在我的 Swagger 文档中显示此登录端点的方法吗?
谢谢。
另外,我应该说 Swagger 文档适用于我所有的控制器,只是我缺少一个明显的方法 - 如何登录。
【问题讨论】:
-
我不知道这个Link 是否会有所帮助,但它也会解释如何在没有任何人的情况下创建 XML
-
谢谢,这实际上是我设置 Swagger 时关注的文章之一。
-
您在标签中提到了 Swashbuckle,您是否看过 github.com/domaindrivendev/Swashbuckle/blob/master/README.md 的“描述安全/授权方案”部分?
-
是的,通过 swashbuckle - 我已经为 oauth 隐式工作流配置了 swagger,这使得 swagger UI 能够执行 post/get 请求等。我不相信这个配置会创建任何 api 文档令牌端点。
标签: asp.net-web-api asp.net-identity swagger-ui swashbuckle