ili*_*nca 8 spring spring-mvc cors spring-web
我想允许一个域的跨域请求.我的项目使用Spring,所以我想利用新的CORS支持.
我正在使用4.2.0所有springframework依赖项的版本.
我按照这里的示例https://spring.io/blog/2015/06/08/cors-support-in-spring-framework#disqus_thread并尝试了第一个版本.我的控制器注释看起来像:
@CrossOrigin(origins = "http://fiddle.jshell.net/", maxAge = 3600)
@Controller
@RequestMapping("/rest")
public class MyController
Run Code Online (Sandbox Code Playgroud)
如果我理解正确,mvc-config是另一种方法.我也试过了:
<mvc:cors>
<mvc:mapping path="/**"
allowed-origins="http://fiddle.jshell.net/, http://domain2.com"
allowed-methods="GET, PUT"
allowed-headers="header1, header2, header3"
exposed-headers="header1, header2" allow-credentials="false"
max-age="123" />
</mvc:cors>
Run Code Online (Sandbox Code Playgroud)
使用任何一种方法,Response似乎都不包含任何类似的东西Access-Control-Allow-Origin,也不能通过jsfiddle的简单查询得到结果.
Chrome开发人员工具的标题信息在运行时从localhost访问,如下所示.在这种情况下,请求来自同一个域,而不是通过javascript,但我认为CORS注释会添加访问控制参数吗?
响应标题:
Content-Length:174869
Content-Type:text/html;charset=UTF-8
Date:Fri, 21 Aug 2015 12:21:09 GMT
Server:Apache-Coyote/1.1
Run Code Online (Sandbox Code Playgroud)
请求标题:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*\/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8,ro;q=0.6,de;q=0.4,fr;q=0.2
Cache-Control:no-cache
Connection:keep-alive
Cookie:JSESSIONID=831EBC138D2B7E176DF4945ADA05CAC1;_ga=GA1.1.1046500342.1404228238; undefined=0
Host:localhost:8080
Pragma:no-cache
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0(Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.155 Safari/537.36
Run Code Online (Sandbox Code Playgroud)
我不使用弹簧靴,我认为我错过了一个配置步骤.
| 归档时间: |
|
| 查看次数: |
7101 次 |
| 最近记录: |