springboot 跨域
时间: 2023-06-18 12:05:46 浏览: 64
在 Spring Boot 中,我们可以使用注解 `@CrossOrigin` 来实现跨域访问。
首先,你需要在需要允许跨域的 Controller 上添加 `@CrossOrigin` 注解:
```java
@RestController
public class MyController {
@CrossOrigin(origins = "http://localhost:8080")
@GetMapping("/hello")
public String hello() {
return "Hello World!";
}
}
```
在这个例子中,我们允许 `http://localhost:8080` 发起跨域请求。你可以通过 `origins` 属性指定允许跨域的域名,也可以使用通配符 `*` 来允许所有域名来访问。
当然,你也可以在全局配置中启用跨域支持,只需要在 `WebMvcConfigurer` 中添加如下配置即可:
```java
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("*")
.allowedHeaders("*");
}
}
```
这个例子中,我们允许所有域名、所有 HTTP 方法、所有请求头都可以进行跨域请求。你可以根据实际需要来进行配置。