微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Swagger.Net UI 中,如何从“匿名”方法中删除挂锁图标?

如何解决在 Swagger.Net UI 中,如何从“匿名”方法中删除挂锁图标?

我发现了一个类似的线程 here,但它是针对 .Net Core 的。我对 Swagger.Net API(.Net Framework)有同样的问题。

我正在将 Swagger.Net API 版本 8.3.35.101 与 .Net framework 4.6.1 一起使用,并且我在 Swagger UI 中获得了每个方法的锁定图标。我的应用程序中的某些 API 不需要身份验证,因此我想从这些 API 中删除挂锁图标。

enter image description here

需要移除的挂锁图标可以在上图中以红色突出显示。我相信可以通过实现 IOOperationFilter 来为匿名方法隐藏它,但找不到任何示例代码来使用 .Net 框架实现它。

解决方法

以下是我们在评论中讨论的答案:

问题是 ApiKey 的配置类型不正确,应该是这样:

c.ApiKey("apiKey","header","API Key Authentication",typeof(KeyAuthorizeAttribute));
c.ApiKey("appId","APP ID Authentication",typeof(KeyAuthorizeAttribute));

github 上的代码:
https://github.com/heldersepu/nhc-noaa/blob/master/nhc-noaa/App_Start/SwaggerConfig.cs#L75

还有一个现场样品:
http://nhc-noaa.azurewebsites.net/swagger/ui/index?docExpansion=list&filter=#/

挂锁图标仅在其中之一上 enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。