springMVC4.X json 跨域问题
2017-01-17 本文已影响0人
好好学习天天引体向上
首先,关于迁移至spring4.x需要发生的配置改动
- json依赖包发生变化,maven中获取
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.5.0</version>
</dependency>
- 配置文件需要修改
<mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</mvc:message-converters>
</mvc:annotation-driven>
- 前端传回数据
$.ajax({
url: 'url',
method: 'POST',
dataType: 'JSON',
contentType:'application/json;charset=UTF-8',
data: JSON.stringify(req_data),
success: function () {
}
});
解决跨域问题
- 全局配置方式
spring servletContext配置文件中添加
<!-- API 接口跨域配置 -->
<mvc:cors>
<mvc:mapping path="/**"
allowed-origins="*"
allowed-methods="POST, GET, OPTIONS, DELETE, PUT"
allowed-headers="Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"
allow-credentials="true" />
</mvc:cors>