Java 跨域 CrossOrigin注解 Filter拦截 Nginx配置
说明
- 资源请求的发起方与请求的资源不在同一个域中的;
- 一般的,只要网站的【协议名protocol】、【主机host】、【端口号port】这三个中的任意一个不同,网站间的数据请求与传输便构成了跨域调用;
- 跨域请求能够达到服务端,但是返回结果会被浏览器拦截;
处理方式
1、filter处理器
一般的处理方法,在Filter中拦截请求,在请求头中添加信息,例如:
setHeader("Access-Control-Allow-Origin","*")
2、@CrossOrigin注解
1、Spring 4.2之后提供了跨域注解 @CrossOrigin;
2、可以用在方法或Controller上;
3、Controller和方法上都有时,Spring会合并两个注解的属性一起使用;
@CrossOrigin
@RequestMapping("/obtainJqxxListByPage")
public Map obtainJqxxListByPage(){}
注解属性有以下7个
String[] value() default {}
String[] origins() default {}
String[] allowedHeaders() default {}
String[] exposedHeaders() default {}
RequestMethod[] methods() default {}
String allowCredentials() default {}
long maxAge() default -1L
3、Nginx配置解决跨域
作者:Muscleape
出处:http://www.cnblogs.com/muscleape/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步