一:跨域(CORS)支持
Spring Framework 4.2 GA爲CORS提供了第一類支持,使您比通常的基於過濾器的解決方案更容易和更強大地配置它。所以springMVC的版本要在4.2或以上版本才支持@CrossOrigin
二:@CrossOrigin註解的使用位置
1)在controller類上使用,對所有controller中的所有方法都生效
@Controller
@CrossOrigin
public class MyController {
}
三:在Controller中的方法上使用,只對該方法生效
@CrossOrigin
@RequestMapping(value = "/test",method = RequestMethod.POST)
public void test(@RequestBody TestRequest testRequest){
}
四:使用@CrossOrigin註解後不能跨域訪問的解決辦法
1)情況一:在方法上使用@CrossOrigin註解,但@RequestMapping註解中沒有指定Get、Post方式,通過method = RequestMethod.POST/GET指定或者指定@CrossOrigin註解中的methods = {RequestMethod.POST}後,問題解決。
#在@CrossOrigin中methods指定方式
@CrossOrigin(methods = {RequestMethod.POST})
#或者@RequestMapping註解定義method
@RequestMapping(value = "/test",method = {RequestMethod.POST})
其他的幾種情況,和情況一的詳細解釋請參考:CrossOrigin註解沒有生效,解決方案集合[No.036]