企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
前后端分离模式下的跨域访问: ~~~ upstream tomcat_server { server 10.25.39.131:8080; server 10.25.39.132:8080; } server { listen 80; server_name www.wxvote.com; ##注意: ##"proxy_pass"中的路径只能到端口,否则报: cannot have URI part in location given by regular expression location ~* \.(html|css|js|gif|jpg|jpeg|mp4)$ { proxy_pass http://10.25.39.140:8020; } location / { proxy_pass http://tomcat_server/; proxy_set_header Host $host; } } ~~~ 访问现有的ajax服务 例如:访问心知天气。 ~~~ server { listen 80; server_name localhost; location ~* \.(html|css|js|gif|jpg|jpeg|mp4)$ { root weather; } location / { proxy_pass http://api.seniverse.com; } } ~~~ springboot配置跨域 ``` package com.example.demo.config; import static org.springframework.web.cors.CorsConfiguration.ALL; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpHeaders; import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; @Configuration @ComponentScan(basePackages={"com.example.demo"}) public class SpringConfig { //增加跨域权限配置 @Bean public WebMvcConfigurer corsConfigurer() { return new WebMvcConfigurerAdapter() { @Override public void addCorsMappings(CorsRegistry registry) { // 限制了路径和域名的访问 /*registry.addMapping("/api*").allowedOrigins("http://localhost:8081");*/ //设置允许跨域的路径 registry.addMapping("/**") //设置允许跨域请求的域名 // .allowedOrigins(ALL) //设置允许跨域请求的域名,如果想要传递cookie,就不能再用* .allowedOrigins("http://localhost:9527") //是否允许证书 不再默认开启 .allowCredentials(true) //设置允许的方法 .allowedMethods(ALL) //设置允许的header .allowedHeaders(ALL) //.exposedHeaders(HttpHeaders.SET_COOKIE, "token") //跨域允许时间 .maxAge(3600); registry.addMapping("/**") //设置允许跨域请求的域名 // .allowedOrigins(ALL) //设置允许跨域请求的域名,如果想要传递cookie,就不能再用* .allowedOrigins("http://localhost:8081") //是否允许证书 不再默认开启 .allowCredentials(true) //设置允许的方法 .allowedMethods(ALL) //设置允许的header .allowedHeaders(ALL) //.exposedHeaders(HttpHeaders.SET_COOKIE, "token") //跨域允许时间 .maxAge(3600); } }; } } ```