springboot中添加 Access-Control-Allow-Origin
时间: 2023-12-28 20:26:14 浏览: 156
在Spring Boot中添加Access-Control-Allow-Origin可以通过配置CORS(跨域资源共享)来实现。以下是两种常见的方法:
1. 使用注解方式:
在你的Controller类或方法上添加@CrossOrigin注解,指定允许跨域的源。例如:
```java
@CrossOrigin(origins = "http://example.com")
@RestController
public class MyController {
// ...
}
```
这将允许来自"http://example.com"的请求跨域访问你的接口。
2. 使用配置文件方式:
在application.properties或application.yml文件中添加以下配置:
```yaml
spring:
cors:
allowed-origins: http://example.com
```
这将允许来自"http://example.com"的请求跨域访问你的接口。
需要注意的是,以上两种方法都可以指定多个允许跨域的源,以逗号分隔。
相关问题
Java springboot 添加Access-Control-Allow-Origin
Java Spring Boot 是一个非常流行的开发框架,用于构建基于Java的Web应用程序。在Web开发中,经常需要处理跨域请求,这时候就需要设置 Access-Control-Allow-Origin。
在 Spring Boot 应用程序中,可以通过添加一个过滤器来实现这个功能。具体实现步骤如下:
1. 创建一个过滤器类,继承 OncePerRequestFilter 类,并重写 doFilterInternal 方法。
2. 在 doFilterInternal 方法中,添加如下代码:
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");
3. 在过滤器类上使用 @Component 注解,将其注入到 Spring 容器中。
4. 在 Spring Boot 应用程序的主类上添加 @ServletComponentScan 注解,以便 Spring Boot 能够扫描到我们创建的过滤器。
这样就完成了 Access-Control-Allow-Origin 的设置,可以处理跨域请求了。
SpringBoot怎么设置Access-Control-Allow-Origin响应头
可以通过在Spring Boot应用程序中添加一个过滤器来设置Access-Control-Allow-Origin响应头。具体步骤如下:
1.创建一个名为CorsFilter的类,并实现javax.servlet.Filter接口。
2.在doFilter方法中,添加以下代码以设置Access-Control-Allow-Origin响应头:
```java
response.setHeader("Access-Control-Allow-Origin", "*");
```
其中,*表示允许所有来源访问该资源。如果你想限制访问来源,可以将*替换为特定的域名。
3.将CorsFilter类添加到Spring Boot应用程序中。可以通过在应用程序的主类上添加@ServletComponentScan注释来实现这一点,如下所示:
```java
@SpringBootApplication
@ServletComponentScan
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
```
4.重新启动应用程序,Access-Control-Allow-Origin响应头现在应该已经设置了。
阅读全文