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

ASP.NET Web Api Swagger 字符串参数错误 - 无描述

如何解决ASP.NET Web Api Swagger 字符串参数错误 - 无描述

我正在使用 Swagger UI 来测试我的 ASP.NET Web Api 应用程序。我添加一个允许操作参数的类

public void Apply(OpenApiOperation operation,OperationFilterContext context)
{
    if (operation.Parameters == null) 
        operation.Parameters = new List<OpenApiParameter>();

    operation.Parameters.Add(new OpenApiParameter
    {
        Name = "ApiKey",In = ParameterLocation.Header,required = true,Schema = new OpenApiSchema
        {
            Type = "String"
        }
    });
    operation.Parameters.Add(new OpenApiParameter
    {
        Name = "Authentication",required = false,Schema = new OpenApiSchema
        {
            Type = "String"
        }
    });
}

在我的 Startup.cs 中,我将这一行添加到 ConfigurationServices 方法

c.OperationFilter<CustomHeaderSwaggerAttribute>();

当我尝试测试其中一种控制器方法时,无论我在文本框中输入什么内容,我的 ApiKey 字符串参数始终显示错误

enter image description here

解决方法

我不确定 Schema 属性,但过去对我有用(将 type 设置为 string):

operation.Parameters.Add(new Parameter
        {
            name = "ApiKey",@in = ParameterLocation.Header,required = true,type = "string"                
        });

有关详细信息,请参阅this post

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