uni.uploadFile上传图片后台接收不到数据

今天遇到一个很奇怪的问题,通过使用uni.uploadFile上传文件时后端接收不到文件,查过很多资料,原来是自定义了header的Content-Type问题。取消即可,另把自定义文件上传的代码贴出来。

分析:当我们加上请求头的时候

不加请求头的时候

浏览器会默认帮我们加上请求头,并且默认加上一串boundary信息。

使用'multipart/form-data'需要不需要设置浏览器会自己设置,因为我们设置Content-type会覆盖浏览器自己设置的值,我们不知道formData对象里面的boundary分隔符是什么,所以就会导致后端接受到数据以后在Content-type中找不到boundary或者boundary的值与formData中的boundary不一致,导致无法获取正确的数据

上传文件插件

复制代码
  <uni-file-picker file-extname="jpg,jpeg,gif,png" @select="selectFile"  ref="files" :auto-upload="false"  limit="1" fileMediatype="image"/>

select文件动作保存文件信息

复制代码
methods: {
            selectFile(e){this.fileInfo=e.tempFiles[0];},
            ......
        }

uni.uploadFile(
                        {
                            url:"https://www.chinayq.com/api/user/user.ashx",
                            filePath:that.fileInfo.url,
                            name:"file",
                            header: {
                            //"Content-Type": "multipart/form-data", // 不要自定义Content-Type头
                            "token": uni.getStorageSync('token') // token验证
                            },
                            //formData:that.formData,
                            success:function(res)
                            {
                                
                            }
                            
                        });        
                    })}
相关推荐
也许,也会3 小时前
PLC1200 TCP/IP通信实操全解析:从基础到落地
服务器·网络·tcp/ip
IT 行者3 小时前
OpenClaw 浏览器自动化测试的那些坑(一):Linux Snap 版本的 Chromium 无法使用托管模式
linux·运维·服务器·人工智能
玹外之音3 小时前
Spring AI 实战:手把手教你构建支持多会话管理的智能聊天服务
java·spring
cc.ChenLy3 小时前
【CSS进阶】毛玻璃效果与代码解析
前端·javascript·css
何中应3 小时前
使用Jenkins部署前端项目(Vue)
前端·vue.js·jenkins
3秒一个大3 小时前
JWT 登录:原理剖析与实战应用
前端·http·代码规范
NEXT063 小时前
2026 技术风向:为什么在 AI 时代,PostgreSQL 彻底成为了全栈工程师的首选数据库
前端·数据库·ai编程
枷锁—sha4 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 046】详解:Ret2Libc 之 64位动态泄露
服务器·网络·安全·网络安全·系统安全
callJJ4 小时前
Spring Bean 生命周期详解——从出生到销毁,结合源码全程追踪
java·后端·spring·bean·八股文
怒放吧德德4 小时前
AsyncTool + SpringBoot:轻量级异步编排最佳实践
java·后端