说明

  • 资源请求的发起方与请求的资源不在同一个域中的;
  • 一般的,只要网站的【协议名protocol】、【主机host】、【端口号port】这三个中的任意一个不同,网站间的数据请求与传输便构成了跨域调用;
  • 跨域请求能够达到服务端,但是返回结果会被浏览器拦截;

处理方式

1、filter处理器

一般的处理方法,在Filter中拦截请求,在请求头中添加信息,例如:

setHeader("Access-Control-Allow-Origin","*")

2、@CrossOrigin注解

1、Spring 4.2之后提供了跨域注解 @CrossOrigin;

2、可以用在方法或Controller上;

3、Controller和方法上都有时,Spring会合并两个注解的属性一起使用;

[官方文档]https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annotation/CrossOrigin.html

@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配置解决跨域

Java 跨域 CrossOrigin注解 Filter拦截 Nginx配置的更多相关文章

  1. 跨域原因及SpringBoot、Nginx跨域配置

    目录 概述 简单请求 跨域解决方案 概述 SpringBoot跨域配置 Nginx跨域配置 概述 MDN文档 Cross-Origin Resource Sharing (CORS) 跨域的英文是Cr ...

  2. JAVA跨域CORS

    写了一个前端vue调用后端Java的接口,报“Access-Control-Allow-Origin”问题.

  3. JAVA跨域资源访问CORSFilter

    当一个资源从与该资源本身所在的服务器不同的域或端口不同的域或不同的端口请求一个资源时,资源会发起一个跨域 HTTP 请求. 出于安全考虑,浏览器会限制从脚本内发起的跨域HTTP请求.跨域资源共享机制允 ...

  4. springboot的@CrossOrigin注解解决细粒度的配置跨域

    import java.util.HashMap; import org.springframework.web.bind.annotation.CrossOrigin; import org.spr ...

  5. java跨域

    在我们开发当中  经常会碰见跨域问题 今天我来说下 我在工作撞见的跨域: 一.首先我们要了解跨域存在的原因 1.浏览器限制 2.跨域(域名,端口不一样都是跨域) 3.XHR(XMLHttpReques ...

  6. Java跨域设置

    Access-Control-Allow-Origin 为允许哪些Origin发起跨域请求. 这里设置为"*"表示允许所有,通常设置为所有并不安全,最好指定一下. Access-C ...

  7. 最简单实现跨域的方法:用 Nginx 反向代理

    本文作者: 伯乐在线 - 良少 .未经作者许可,禁止转载!欢迎加入伯乐在线 专栏作者. 什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对javascrip ...

  8. [转] 最简单实现跨域的方法:使用nginx反向代理

    [From] http://blog.jobbole.com/90975/ 什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全 ...

  9. JAVA跨域、RestTemplate高并发下异常与配置、JSON数据Long转String

    ## 跨域支持 import org.springframework.context.annotation.Bean; import org.springframework.context.annot ...

随机推荐

  1. 消息队列在VB.NET数据库开发中的应用

    我们先简单的了解一下什么是消息队列(MSMQ)?消息队列是 Windows 2000(NT也有MSMQ,WIN95/98/me/xp不含消息队列服务但是支持客户端的运行)操作系统中通讯的基础,也是用于 ...

  2. 我的主机是win 7 虚拟机是vmware,solaris10连接主机

    进入主机Control Panel—Administrative Tool—Services,打开服务Vmware DHCP Servise和Vmware NAT Service,启动后虚拟机上网正常 ...

  3. x86 openwrt虚拟路由代理上网

    一.代理服务器设置 1.下载代理软件CCProxy 6.8 Build 2.设置如下 二.x86 路由设置 1.在/etc目录下编辑profile http_proxy= https_proxy= f ...

  4. PHP常用函数总结(二):

    //=================图像处理=================================== //=================会话机制================== ...

  5. 织梦开启PHP 标签

    第一步: dedecms出现DedeCMS Error:Tag disabled:php原因解决 --------------------------------------------------- ...

  6. 在ASP.NET应用程序中使用身份模拟(Impersonation)

    摘要   缺省情况下,ASP.NET应用程序以本机的ASPNET帐号运行,该帐号属于普通用户组,权限受到一定的限制,以保障ASP.NET应用程序运行的安全.但是有时需要某个ASP.NET应用程序或者程 ...

  7. Dubbo配置优化

    来自于:https://blog.csdn.net/youaremoon/article/details/51884644 感谢博主,收藏一下 dubbo作为一个服务治理框架,功能相对比较完善,性能也 ...

  8. bzoj2002 弹飞绵羊

    Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置 ...

  9. binlog之五:mysqlbinlog解析binlog乱码问题解密

    发现MySQL库的binlog日志出来都是乱码,如下所示: BINLOG ’ IXZqVhNIAAAALQAAAGcBAAAAAHoAAAAAAAEABHRlc3QAAno0AAEDAABUOcnY  ...

  10. java实验四——找鞍点

    package hello; public class 实验四 { public static void main(String[] args) { // TODO Auto-generated me ...