美文网首页
Spring Boot跨域解决方案

Spring Boot跨域解决方案

作者: Maggieq8324 | 来源:发表于2019-08-26 13:21 被阅读0次
一、什么是跨域

为保证浏览器的安全,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源,这称之为同源策略,如果一个请求地址里的协议、域名、端口号都相同,就属于同源。依据浏览器同源策略,非同源脚本不可操作其他源下的对象,想要操作其他源下的对象就需要跨域。

二、CORS

CORS是为解决浏览器跨域问题由W3C提出的跨源资源共享方案,CORS可以在不破坏即有规则的情况下,通过后端服务器实现CORS接口,从而实现跨域通信。

三、实现
  • config包下添加CORS配置类,实现WebMvcConfigurer接口
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")  // 允许跨域访问的路径
        .allowedOrigins("*")    // 允许跨域访问的源
        .allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")  // 允许请求方法
        .maxAge(168000) // 预检间隔时间
        .allowedHeaders("*")  // 允许头部设置
        .allowCredentials(true);    // 是否发送cookie
    }
}

这样,每当客户端发送请求时,都会在头部附上跨域信息,就可以支持跨域访问了

相关文章

  • 跨域配置

    SpringBoot跨域配置 我们的后端使用Spring Boot。Spring Boot跨域非常简单,只需书写以...

  • 2019-04-01

    Spring Boot轻松跨域:Spring Boot中采用注解轻松实现跨域的一个基础例子 1.项目结构,conf...

  • SpringBoot+Vue数据交互

    后端框架Spring Boot,前端框架vue 1. 跨域+携带cookie 跨域-携带cookie 2. 拦截器...

  • Spring Boot 跨域访问

    如何在 Spring Boot 中配置跨域访问呢?Spring Boot 提供了对 CORS 的支持,您可以实现W...

  • Spring Boot跨域解决方案

    一、什么是跨域 为保证浏览器的安全,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源,这称之为同源策略,...

  • Spring Boot 跨域解决方案

    跨域 前端和后端的跨域问题,主要是由于浏览器同源策略的限制,同源一般指相互请求资源的两个域的协议、域名(主域名以及...

  • Spring boot2.4版本跨域问题

    问题描述 spring boot2.4版本之后,延用2.3的跨域方式,访问swagger出错. 2.3版本跨域配置...

  • Ajax跨域问题复现及解决方法(学习笔记)

    模拟跨域问题 1.创建后台项目 使用SPRING BOOT开发网址如下 https://start.spring....

  • Spring Boot打war包部署遇到的坑

    Spring Boot解决跨域问题 在Controller层加入@CrossOrigin注解即可 部署 pom.x...

  • Spring Boot设置跨域

    跨域是很多应用都会遇到的问题。 Spring Boot2.0之前继承WebMvcConfigurerAdapte即...

网友评论

      本文标题:Spring Boot跨域解决方案

      本文链接:https://www.haomeiwen.com/subject/xemrectx.html