swagger在oauth统一认证中报错401 Unauthorized

 在项目进行开发的时候搭建的swagger访问http://localhost:8080/swagger-ui.html

发现springCloud搭建的oauth统一认证的框架中

 Unauthorized  401明显就是授权认证没有token问题。接口文档swagger其实可以不需要认证,只是开发者在开发环境使用。

1、要么添加固有认证token在系统中,在访问swagger-ui.html前在请求添加token

2、忽略swagger的所有接口的统一认证,配置文件中添加以下配置(其中不止是忽略/swagger-ui.html/**,因为打开swagger还同时调用了很多个接口,我这里动态读取了配置文件的参数)

security.ignored=/swagger-resources/**,/webjars/**,/v2/**,/swagger-ui.html/**,/doc.html

 在代码web.ignoring().antMatchers();直接添加忽略过滤也可以

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    public void configure(WebSecurity web) throws Exception {
        //ignore
        web.ignoring().antMatchers("/swagger-resources/**","/webjars/**","/v2/**","/swagger-ui.html/**","/doc.html");
    }

}
配置完之后再次访问swagger-ui.html,成功。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值