• Swagger生成的接口需要权限验证的处理方法


    通常开发API的时候需要对接口进行权限验证,而我们在使用Swagger生成接口文档界面的时候,直接调用需要权限验证的接口会提示"当前用户没有登陆"

    为了解决此问题,我们需要更改一下Swagger的配置,

    找到Startup文件,我们看到Swagger的配置如下:

    services.AddSwaggerGen(options =>
                {
                    options.SwaggerDoc("v1", new Info { Title = "YjJob API", Version = "v1" });
                    options.DocInclusionPredicate((docName, description) => true);
    
                });

    现在我们添加一下配置配置:

    services.AddSwaggerGen(options =>
                {
                    options.SwaggerDoc("v1", new Info { Title = "YjJob API", Version = "v1" });
                    options.DocInclusionPredicate((docName, description) => true);
                    options.AddSecurityDefinition("Bearer", new ApiKeyScheme
                    {
                        Description = "Authorization format : Bearer {token}",
                        Name = "Authorization",
                        In = "header",
                        Type = "apiKey"
                    });//api界面新增authorize按钮
                });
    

      修改后我们可以看到生成的Swagger UI界面新增了一个“Authorize”按钮:

    点击“Authorize”按钮弹出以下界面

    在value文本框中输入"Bearer "+token(登陆接口返回的access_token),然后点击“Authorize”按钮。之后再调用需要权限验证的接口就可以正常调用了

     
    如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!
    作者:Super
    声明:原创博客请在转载时保留原文链接或者在文章开头加上本人博客地址,如发现错误,欢迎批评指正。凡是转载于本人的文章,不能设置打赏功能,如有特殊需求请与本人联系!

  • 相关阅读:
    Animation用法
    英文口语及书写常用句型汇总1
    Jqplot使用总结之二(双Y轴)
    SqlServer扩展存储过程
    SQL Server常见基础操作
    C# 利用ITextSharp导出PDF文件
    go常量
    ARP协议
    go数组
    go基本数据类型
  • 原文地址:https://www.cnblogs.com/adawoo/p/8349598.html
Copyright © 2020-2023  润新知