spring boot跨域设置

时间:2023-03-08 17:37:10
spring boot跨域设置

定义

跨域是指从一个域名的网页去请求另一个域名的资源

跨域背景

限制原因

如果一个网页可以随意地访问另外一个网站的资源,那么就有可能在客户完全不知情的情况下出现安全问题

为什么要跨域

公司内部有多个不同的子域,比如一个是location.company.com ,而应用是放在app.company.com , 这时想从 app.company.com去访问 location.company.com 的资源就属于跨域

java解决方式

在servlet中对response进行设置:

response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");

spring boot注解

部分服务接口设置跨域访问

接受所有请求

添加注解@CrossOrigin

接受特定请求、形式

@CrossOrigin(origins = https://domain2.com,maxAge = 3600,methods = {RequestMethod.GET, RequestMethod.POST})

全局设置

spring boot跨域设置