解决Spring Security集成knife4j访问接口文档出现403的问题

 更新时间:2023年07月28日 11:55:55   作者:怪 咖@  
这篇文章主要给大家介绍了如何解决Spring Security集成knife4j访问接口文档出现403的问题,文中有详细的解决方案,有需要的朋友可以参考阅读下

问题描述:

使用的springboot版本是2.3.12.RELEASE,引用的依赖如下:

<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <version>${knife4j.version}</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.10.5</version>
    <exclusions>
        <exclusion>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-models</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-models</artifactId>
    <version>1.5.22</version>
</dependency>

在WebSecurityConfigurerAdapter继承类当中配置了跳过认证

@Override
public void configure(WebSecurity web) {
    web.ignoring().antMatchers("/doc.html",
            "/favicon.ico",
            "/v2/api-docs",
            "/swagger-resources/**",
            "/webjars/**");
}

然后访问doc.html接口文档也可以正常访问,就是每访问一次控制台就会出来一个异常,后来排查到访问doc.html的时候他会去访问http://localhost:9079/stdc/api/talentpool/favicon.ico,是这个接口报出来的异常。

/stdc/api/talentpool是设置的server.servlet.context-path

这个异常是由自定义的认证失败类 抛出来的。按正常来说就算认证失败了request.getRequestURI()获取到的也不应该是error呀。

解决过程:

针对于这个问题其实官网当中是有提到的:https://gitee.com/xiaoym/knife4j/issues/I3UEMQ

favicon.ico就是获取的网站的图标,在当前工程下,resources/static目录下存放一个favicon.ico文件即可解决。

到此这篇关于解决Spring Security集成knife4j访问接口文档出现403的问题的文章就介绍到这了,更多相关SpringSecurity访问接口403内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java BasePooledObjectFactory 对象池化技术的使用

    Java BasePooledObjectFactory 对象池化技术的使用

    这篇文章主要介绍了Java BasePooledObjectFactory 对象池化技术,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Java设计模式之代理模式(Proxy模式)介绍

    Java设计模式之代理模式(Proxy模式)介绍

    这篇文章主要介绍了Java设计模式之代理模式(Proxy模式)介绍,本文讲解了为什么要使用代理模式、如何使用代理模式等内容,需要的朋友可以参考下
    2015-03-03
  • Java后台返回blob格式的文件流的解决方案

    Java后台返回blob格式的文件流的解决方案

    在Java后台开发中,经常会遇到需要返回Blob格式的文件流给前端的情况,Blob是一种二进制大对象类型,可以用于存储大量的二进制数据,例如图片、音频、视频等,本文将为你详细介绍如何在Java后台中返回Blob格式的文件流,需要的朋友可以参考下
    2024-08-08
  • 简单工厂模式_动力节点Java学院整理

    简单工厂模式_动力节点Java学院整理

    这篇文章主要介绍了简单工厂模式的相关资料,和大家一起学习静态工厂方法模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Spring IOC源码剖析_如何整体认知Spring体系结构

    Spring IOC源码剖析_如何整体认知Spring体系结构

    这篇文章主要介绍了Spring IOC源码剖析_如何整体认知Spring体系结构方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • springCloud config本地配置操作

    springCloud config本地配置操作

    这篇文章主要介绍了springCloud config本地配置操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • 基于spring中的aop简单实例讲解

    基于spring中的aop简单实例讲解

    下面小编就为大家带来一篇基于spring中的aop简单实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • 使用Java自制一个一个Nacos

    使用Java自制一个一个Nacos

    Nacos是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台,本文将尝试用Java实现一个Nacos,感兴趣的可以了解下
    2024-01-01
  • Java实现九宫格的简单实例

    Java实现九宫格的简单实例

    这篇文章主要介绍了 Java实现九宫格的简单实例的相关资料,需要的朋友可以参考下
    2017-06-06
  • 五种Java多线程同步的方法

    五种Java多线程同步的方法

    这篇文章主要为大家详细介绍了五种Java多线程同步的方法,需要的朋友可以参考下
    2015-09-09

最新评论