spring项目xml形式如何设置跨域允许
时间: 2023-12-14 19:38:14 浏览: 70
在 Spring 项目中,可以通过配置 Spring MVC 的拦截器来实现跨域访问。以下是一个简单的示例:
1. 创建一个自定义的拦截器类,实现 HandlerInterceptor 接口,在 preHandle 方法中设置响应头信息:
```java
public class CorsInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception {
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", "Origin, X-Requested-With, Content-Type, Accept");
return true;
}
}
```
2. 在 Spring 的配置文件中注册该拦截器,并设置对应的拦截路径:
```xml
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/>
<bean class="com.example.interceptor.CorsInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
```
以上配置中将拦截所有请求,并将其交由 `CorsInterceptor` 处理。
需要注意的是,由于跨域访问会涉及到浏览器的同源策略,因此在进行跨域访问时,需要确保被访问的接口已经进行了充分的安全考虑。
阅读全文