Java 添加OncePerRequestFilter为spring启动应用程序后,swagger未打开
我已经在我的springboot应用程序中实现了OncePerRequestFilter,但是在添加了过滤器之后,swagger没有打开它,它给出了401错误(这是显而易见的)。我的问题是如何绕过我的过滤器招摇 我在pom文件中只添加了此依赖项Java 添加OncePerRequestFilter为spring启动应用程序后,swagger未打开,java,spring-boot,filter,swagger,Java,Spring Boot,Filter,Swagger,我已经在我的springboot应用程序中实现了OncePerRequestFilter,但是在添加了过滤器之后,swagger没有打开它,它给出了401错误(这是显而易见的)。我的问题是如何绕过我的过滤器招摇 我在pom文件中只添加了此依赖项 <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui&
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>${swagger.springdoc.openapi}</version>
</dependency>
我尝试添加我的招摇过市url,正如您在else条件中看到的(作为一种解决方法),但这也不起作用
任何帮助都将不胜感激
短暂性脑缺血发作
@Component
public class RequestResponseFilter extends OncePerRequestFilter{
@Inject
private AuthService authService;
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
if(request.getServletPath().contains(ApiResource.PING)) {
response.setStatus(HttpServletResponse.SC_OK);
return;
}else if(request.getServletPath().contains("swagger-ui.html")){
//return;
}else if(request.getServletPath().contains("swagger-ui/index.html")){
//return;
}
else {
// Get the HTTP Authorization header from the request
final String authorizationHeader = request.getHeader(HttpHeaders.AUTHORIZATION);
final boolean authStatus = authService.authenticate(authorizationHeader);
if (!authStatus) {
response.sendError(HttpServletResponse.SC_UNAUTHORIZED,
"REST signature failed validation.");
return;
}
}
filterChain.doFilter(request, response);
}
}