温馨提示×

如何解决springboot整合vue中的跨域问题

小樊
82
2024-06-26 12:17:46
栏目: 编程语言

可以通过在springboot项目中配置跨域请求的过滤器来解决整合vue中的跨域问题。具体步骤如下:

  1. 在springboot项目中创建一个类,继承自org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter,并重写addCorsMappings方法,如下:
@Configuration
public class CorsConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("*")
                .allowedMethods("GET", "POST", "PUT", "DELETE")
                .allowCredentials(true)
                .maxAge(3600);
    }
}
  1. 在vue项目中,可以在axios的请求拦截器中设置跨域请求的相关配置,如下:
// main.js
import axios from 'axios'

axios.interceptors.request.use(
  config => {
    config.headers['Content-Type'] = 'application/json'
    config.headers['Access-Control-Allow-Origin'] = '*'
    return config
  },
  error => {
    return Promise.reject(error)
  }
)

通过以上步骤,可以解决springboot整合vue中的跨域问题,使得前后端项目可以正常通信。

0