如何使用 Swashbuckle 在 Swagger 中屏蔽密码
How can I mask a password in Swagger using Swashbuckle
我们在 API 上使用 Swashbuckle,对于其中一种方法,我们提供登录。如何在 Swagger 中屏蔽密码 UI?
[HttpGet]
[Produces("text/plain")]
public async Task<string> Login(string userId, string password)
我看到 Swagger 表面上支持密码 fromat。然而,这不是 C# 代码。我不知道把这个放在哪里
@Parameter(schema = @Schema(type = "string", format = "password"))
我们可以尝试将 DataType
属性与 DataType.Password
枚举一起使用,将其放入我们想要屏蔽的参数中。
[HttpGet]
[Produces("text/plain")]
public async Task<string> Login(string userId,[DataType(DataType.Password)]
string password)
然后我们可以得到掩码参数如下
此修改可能在 v2.5.0
版本之后生效,该版本讨论自 Does not use DataType.Password #521
注意:使用命名空间System.ComponentModel.DataAnnotations
中的属性和枚举
我们在 API 上使用 Swashbuckle,对于其中一种方法,我们提供登录。如何在 Swagger 中屏蔽密码 UI?
[HttpGet]
[Produces("text/plain")]
public async Task<string> Login(string userId, string password)
我看到 Swagger 表面上支持密码 fromat。然而,这不是 C# 代码。我不知道把这个放在哪里
@Parameter(schema = @Schema(type = "string", format = "password"))
我们可以尝试将 DataType
属性与 DataType.Password
枚举一起使用,将其放入我们想要屏蔽的参数中。
[HttpGet]
[Produces("text/plain")]
public async Task<string> Login(string userId,[DataType(DataType.Password)]
string password)
然后我们可以得到掩码参数如下
此修改可能在 v2.5.0
版本之后生效,该版本讨论自 Does not use DataType.Password #521
注意:使用命名空间System.ComponentModel.DataAnnotations