Spring解决跨域请求问题
1、spring提供解决跨域问题的方式
- springMvc4.2以上提供了解决跨域请求的注解@CrossOrigin
2、@CrossOrigin的使用 - 该注解提供了2个参数分别是:origins: 允许可访问的域列表 maxAge:准备响应前的缓存持续的最大时间(以秒为单位)
- 该注解可以使用在整个Controller上,也可以单独使用到某接口上(也可以同时使用)
注意:当单独使用在某个接口上时,代表将该接口加入白名单,则这接口不会被拦截,若将注解加载整个Controller上则代表将该Controller下的接口都加入白名单,外部请求不会被拦截。
eg:
--全局的
@CrossOrigin(origins = "http://domain2.com", maxAge = 3600)
@RestController
@RequestMapping("/account")
public class AccountController {
@GetMapping("/{id}")
public Account retrieve(@PathVariable Long id) {
// ...
}
@DeleteMapping("/{id}")
public void remove(@PathVariable