SpringBoot使用@CrossOrigin注解后,图片文件上传失败解决方案

本文介绍了在SpringBoot应用中,使用@CrossOrigin注解后出现图片文件上传跨域问题的两种解决方案。尽管@CrossOrigin通常能解决GET、POST、HEAD请求的跨域,但在文件上传场景下存在问题。解决方案一是指定跨域请求类型,但仍有跨域错误;解决方案二是通过在启动类中配置额外方法,成功解决了跨域问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

@CrossOrigin   //springboot通过跨域请求的注解

在类上面使用@CrossOrigin注解后按理说应该是可以解决跨域问题的,在一般的数据传输当中是没出现问题的,在别人的博客中找到资料说@CrossOrigin注解默认开启了get,post,以及head请求

但是在使用图片文件上传的时候却实现了跨域问题,通过查证资料有两种解决方案

 

解决方案一:

@CrossOrigin(methods = {RequestMethod.GET, RequestMethod.POST, RequestMethod.OPTIONS})

指定开启跨域请求类型,使用post上传可以传输进来文件,但是这里不知道为什么,前端依然会报跨域的错,但是请求码是200.这里先埋个坑,如果有大佬知道了为什么,可以在下方评论区留言一下,以解小弟不解之惑。

解决方案二:


import com.spring4all.swagger.EnableSwagger2Doc;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值