1.先来说说跨域原理:

跨域原理简单来说就是发起跨域请求的时候,浏览器会对请求域返回的响应信息检查HTTP头,如果Access-Control-Allow-Origin包含了自身域,则允许访问,否则报错.

2.如何解决跨域问题

    2.1  使用@CrossOrigin注解

    ①该注解可以使用在方法和类上,使用在方法上表示只对该方法生效.

    @CrossOrigin(origins = {"http://localhost:8080", "null"})

    @GetMapping("/hello")

    public String say(){

      return "hello SpringBoot";

    }

    ②该注解使用在类上是,表示对该类声明所有接口都有效.

    ③如果需要添加全局配置,可以写一个配置类,继承WebMvcConfigurerAdapter类(不推荐,在SpringBoot2.0和Spring5.0以后,WebMvcConfigurerAdapter已被废弃);

    ④.可以继承 WebMvcConfigurationSupport ,重写 addCorsMappings 方法.  

    @Configuration
    public class CorsConfigration extends WebMvcConfigurationSupport {
     @Override
    protected void addCorsMappings(CorsRegistry registry) {
     registry.addMapping("/hello/**")//限定访问路径为/hello
     .allowedOrigins("http://www.baidu.com")//允许来自www.baidu.com的跨域访问
     .allowedMethods("POST","GET");//限定访问方法是POST或者GET
     }
    }

    ⑤.可以实现 WebMvcConfigurer 接口实现 addCorsMappings 方法.同上

附上IDEA重写快捷键ctrl+o.

SpringBoot跨域问题的更多相关文章

  1. 前后端分离框架前端react,后端springboot跨域问题分析

    前后端分离框架前端react,后端springboot跨域问题分析 为啥跨域了 前端react的设置 springboot后端设置 为啥跨域了 由于前后端不在一个端口上,也是属于跨域问题的一种,所以必 ...

  2. springmvc springboot 跨域问题(CORS)

    官方文档:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/cors.html springmvc s ...

  3. 两种解决springboot 跨域问题的方法示例

    两种解决springboot 跨域问题的方法示例,哪种方法看情况而定,自己选择.社会Boolean哥,人狠话不多,直接上代码. 第一种实现方式:       此种方式做全局配置,用起来更方便,但是无法 ...

  4. SpringBoot跨域小结

    前言:公司的SpringBoot项目出于某种原因,经常样处理一些跨域请求. 一.以前通过查阅相关资料自己写的一个处理跨域的类,如下. 1.1首先定义一个filter(拦截所有请求,包括跨域请求) pu ...

  5. springboot跨域请求

      首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 Java小组 工具资源 SpringBoot | 番外:使用小技巧合集 2018/09/17 | 分类: 基础技术 | 0 条评论 | 标 ...

  6. 关于解决Springboot跨域请求的方法

    前言 最近在项目中,由于前后分离,前台项目和后台项目部署的不在一台服务器,就产生了跨域的问题,特此记录下 正文 正常情况下,如果提示: 就可以判断是没有解决跨域的问题了. 在SSM中,我曾经这样解决过 ...

  7. springboot跨域请求设置

    当它请求的一个资源是从一个与它本身提供的第一个资源的不同的域名时,一个资源会发起一个跨域HTTP请求(Cross-site HTTP request).比如说,域名A ( http://domaina ...

  8. springboot 跨域

    参考: https://blog.csdn.net/qq779446849/article/details/53102925 https://blog.csdn.net/wo541075754/art ...

  9. Springboot跨域 ajax jsonp请求

    SpringBoot配置: <dependency> <groupId>org.springframework.boot</groupId> <artifac ...

随机推荐

  1. 【Python】Elasticsearch和elasticsearch_dsl

    官网:https://elasticsearch-py.readthedocs.io/en/master/api.html 官网:https://github.com/elastic/elastics ...

  2. TestNG 单元测试框架的使用

    JUnit让开发人员了解测试的实用性,尤其是在单元测试这一模块上比任何其他测试框架都要简单明了.凭借一个相当简单,务实,严谨的架构,JUnit已经能够“感染”了一大批开发人员.TestNG是一个测试框 ...

  3. kettle删除移动文件

  4. 很不幸,装win10和Ubuntu双系统还是入坑了

    具体问题描述:在安装Ubuntu的时候,没有发现有与windows共存的提示,直接说本计算机没有安装系统.在安装完成后,发现通过BIOS只有进入Ubuntu的启动项,没有进入Windows的启动项. ...

  5. 使用idea建立逆向工程

    逆向工程(Mybatis Generator) 概念 mybatis Generator 中文官网 mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表 自动生成m ...

  6. ASP.NET 实现PDF文件下载[转]

    本文介绍了一种在ASP.NET中下载文件的方法.方法一:可能是最简单的.最短的方式: 1 Response.ContentType = "application/pdf"; 2 R ...

  7. activiti官网实例项目activiti-explorer之扩展流程节点属性2

    情景需求:需要查找activiti-explorer项目中获取流程id的方法,然后根据流程id获取相应字段在节点属性中添加内容. 大致流程:拿取整个流程id获取对应表单属性,在页面节点属性中展示对应表 ...

  8. 如何清空css 的默认边距

    在网页开发中,html的元素,有部分元素默认是有内外边距的,例如body 元素,是有默认边距的 所以在通常情况下,我们都要先清空元素的内外边距:使用通配符选择器* 清空元素的内边距和外边距 ;; } ...

  9. js一行代码解决各种IE兼容问题

    在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实 IE给出了解决方案 Google也给出了解决方案 百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 <!Doctype html ...

  10. mysqli链接数据库

    <?php $uid = $_GET['uid']; $host = 'localhost';$database = 'test';$username = 'root';$password = ...