• 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
    声明:原创博客请在转载时保留原文链接或者在文章开头加上本人博客地址,如发现错误,欢迎批评指正。凡是转载于本人的文章,不能设置打赏功能,如有特殊需求请与本人联系!

  • 相关阅读:
    keyCode对照表
    WebApi的前端调用
    AJAX get和post请求
    Linq中常用语法
    MVC三种分页方法
    常用DBhelper封装方法
    ASP.NET MVC 导入Excel文件(完整版)
    Razor语法2
    MVC之路由规则 (自定义,约束,debug)
    MVC
  • 原文地址:https://www.cnblogs.com/adawoo/p/8349598.html
Copyright © 2020-2023  润新知