详解SpringMVC解决跨域的两种方案

 更新时间:2017年08月23日 11:26:50   作者:CieloSun  
本篇文章主要介绍了详解SpringMVC解决跨域的两种方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

1. 什么是跨域

跨域,即跨站HTTP请求(Cross-site HTTP request),指发起请求的资源所在域不同于请求指向资源所在域的HTTP请求。

2. 跨域的应用情景

当使用前后端分离,后端主导的开发方式进行前后端协作开发时,常常有如下情景:

1.后端开发完毕在服务器上进行部署并给前端API文档。

2.前端在本地进行开发并向远程服务器上部署的后端发送请求。

在这种开发过程中,如果前端想要一边开发一边测试接口,就需要使用跨域的方式。

3. 通过注解的方式允许跨域

非常简单,我们可以在Controller类或其方法上加@CrossOrigin注解,来使之支持跨域。

举例:

@CrossOrigin(origins = "*", maxAge = 3600)
@RestController
@RequestMapping("/User")
public class UserController {
}

其中origins为CrossOrigin的默认参数,即跨域来源,*即任何来源,也可以是其他域名。即可以以以下形式:

@CrossOrigin("http://test.com")
@CrossOrigin(origins="http://test.com",maxAge=3600)

该注解用于方法上,写法相同,处理时,SpringMVC会对类上标签和方法上标签进行合并。

4. 通过配置文件的方式允许跨域

在web.xml中添加如下配置:

  <filter-mapping>
    <filter-name>CorsFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

使用这个Filter即可让整个服务器全局允许跨域。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 工厂方法在Spring框架中的运用

    工厂方法在Spring框架中的运用

    这篇文章介绍了工厂方法在Spring框架中的运用,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • IDEA配置Maven并版本统一管理的实现

    IDEA配置Maven并版本统一管理的实现

    本文主要介绍了IDEA配置Maven并版本统一管理的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • IDEA .iml文件及.idea文件夹超详细讲解

    IDEA .iml文件及.idea文件夹超详细讲解

    iml文件是IntelliJ IDEA自己创建的模块文件,用于java应用开发,存储一些模块相关的信息,比如一个Java组建,插件组建,Maven组建等,这篇文章主要介绍了IDEA .iml文件及.idea文件夹,需要的朋友可以参考下
    2023-09-09
  • Spring Boot应用开发初探与实例讲解

    Spring Boot应用开发初探与实例讲解

    这篇文章主要介绍了Spring Boot应用开发初探与实例讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • mybatis-plus实现四种lambda表达式方式

    mybatis-plus实现四种lambda表达式方式

    使用了lambda表达式 可以通过方法引用的方式来使用实体字段名的操作,本文主要介绍了mybatis-plus实现四种lambda表达式方式,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • 在springboot中使用拦截器的步骤详解

    在springboot中使用拦截器的步骤详解

    拦截器Interceptor,是SpringMVC中的核心内容,在SpringBoot中使用Interceptor,同时采用全注解开发,这篇文章主要介绍了在springboot中使用拦截器的步骤,需要的朋友可以参考下
    2022-01-01
  • 通过JDK源码分析关闭钩子详解

    通过JDK源码分析关闭钩子详解

    一个简单的关闭钩子,程序被中断或者正常退出时会显示 hook shutdown!非常的优雅,有效,巧妙。那么这篇文章就来给大家介绍关于通过JDK源码分析关闭钩子的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴。
    2017-11-11
  • java获取当前日期和时间的二种方法分享

    java获取当前日期和时间的二种方法分享

    这篇文章主要介绍了java获取当前日期和时间的二种方法,需要的朋友可以参考下
    2014-03-03
  • Java编程读写锁详解

    Java编程读写锁详解

    本篇文章给大家详细分享了Java编程读写锁的相关原理以及知识点内容,有兴趣的朋友们可以参考下。
    2018-08-08
  • Spring中多配置文件及引用其他bean的方式

    Spring中多配置文件及引用其他bean的方式

    本文给大家介绍spring中多配置文件及引用其他bean的方式,涉及到spring配置文件的相关知识,感兴趣的朋友一起学习吧
    2016-03-03

最新评论