Knife4j页面空白问题
这篇文章主要解决了使用Knife4j时页面显示空白的问题。通过检查网络响应和浏览器控制台,确定问题通常是由于请求被过滤器或拦截器拦截所致。文章提供了具体的解决方法,即需要在过滤器或拦截器中放行以下路径:`/doc.html`、`/doc.html#/**`、`/webjars/**` 和 `/v3/**`。这样可以确保Knife4j页面能够正常加载,避免空白页面的出现。
Spring Boot解决前端携带自定义Header时的跨域问题
在Spring Boot中,前端携带自定义Header进行跨域访问时,浏览器会先发送一个OPTIONS请求以确认是否允许携带该Header。为了解决这一问题,需要在服务器配置中允许该请求头并返回相应的响应头信息。可以通过在拦截器或过滤器的`afterCompletion`方法中添加代码来实现,包括设置`Access-Control-Allow-Origin`、`Access-Control-Allow-Methods`、`Access-Control-Allow-Headers`和`Access-Control-Allow-Credentials`等响应头。如果请求方法是OPTIONS,则直接返回204状态码。此外,还需在对应的Controller上添加`@CrossOrigin`注解以确保跨域请求被正确处理。