当前位置: 首页 > news >正文

springboot vue配置跨域访问

问题

由于springboot和vue两个端口号不一样,一个是8080,一个是8081,所以vue访问springboot后端接口会报错:

ccess to XMLHttpRequest at 'http://localhost:8081/book/findAll' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

解决

新建config.CorsConfig类:

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("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
                .allowCredentials(true)
                .maxAge(3600)
                .allowedHeaders("*");
    }
}

如果是Springboot2.4.1版本以上,需要将.allowedOrigins替换成.allowedOriginPatterns,否则报错java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a set of origins, list them explicitly or consider using "allowedOriginPatterns" instead.

相关文章:

  • 解决 [WARNING]: Console output during zsh initialization detected.
  • 解决 vue ui 白屏
  • everything的安装后初始设置
  • Windows 安装vue配置
  • Could NOT find resource [logback-test.xml]
  • setSerializationInclusion(JsonInclude.Include.NON_NULL) 没有作用
  • mac查看电脑安装了多少个jdk
  • vue-cli-service: command not found
  • 1067 - Invalid default value for 的原因之一
  • The database returned no natively generated identity value
  • 让elementui upload组件 不显示上传列表
  • java file 获取文件大小 mb为单位
  • idea启用git并拉取上传代码
  • webstorm 2020.3
  • jpa 当前字段是另一个表的count @Formula注解
  • 4个实用的微服务测试策略
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • leetcode-27. Remove Element
  • SpringCloud集成分布式事务LCN (一)
  • storm drpc实例
  • 从0到1:PostCSS 插件开发最佳实践
  • 从0实现一个tiny react(三)生命周期
  • 当SetTimeout遇到了字符串
  • 读懂package.json -- 依赖管理
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 前端之React实战:创建跨平台的项目架构
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 通信类
  • 在Mac OS X上安装 Ruby运行环境
  • ​ArcGIS Pro 如何批量删除字段
  • ​ubuntu下安装kvm虚拟机
  • #vue3 实现前端下载excel文件模板功能
  • (day 12)JavaScript学习笔记(数组3)
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (附源码)ssm考试题库管理系统 毕业设计 069043
  • (强烈推荐)移动端音视频从零到上手(上)
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .net wcf memory gates checking failed
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET处理HTTP请求
  • .net连接MySQL的方法
  • .net与java建立WebService再互相调用
  • @我的前任是个极品 微博分析
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
  • [AI]文心一言出圈的同时,NLP处理下的ChatGPT-4.5最新资讯
  • [C++]STL之map
  • [FZSZOJ 1223] 上海红茶馆
  • [Go WebSocket] 多房间的聊天室(五)用多个小锁代替大锁,提高效率
  • [HCTF 2018]WarmUp (代码审计)
  • [Interview]Java 面试宝典系列之 Java 多线程
  • [LeetCode] 596:超过5名学生的课
  • [Luogu P3527BZOJ 2527][Poi2011]Meteors(整体二分+BIT)