三种方式:一、前端处理,二、后端处理, 三、nginx反向代理
spring-boot cors后端处理:
package com.app.course.config;
//跨域处理
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedHeaders(CorsConfiguration.ALL)
.allowedMethods(CorsConfiguration.ALL)
.allowCredentials(true)
.maxAge(3600); // 1小时内不需要再预检(发OPTIONS请求)
}
}
或者
前端代理处理
vue-cli3.0,在vue.config.js
devServer: {
port: 8080,
proxy:{
"/business":{
target:'http://localhost:3111',
changeOrigin:true,
}
}
},
又或者
nginx反向代理处理
# nginx配置
location /api {
proxy_pass http://47.97.105.144:8080; # 后端接口 IP:port
}