真的不会只会暴力了 2022-12-28 16:36 采纳率: 100%
浏览 48
已结题

VUE3使用FormData传递数据时,后端接收为空

VUE3使用FormData传递数据时,后端接收为空
传递时,请求载荷为[object object]
代码
<input style="width: 100%;" name="multipartFile" type="file" @change="getPhoto">

        const getPhoto = (event) => {
            let multipartFile = new FormData();
            multipartFile.append('multipartFile', event.target.files[0], event.target.files[0].name);
            console.log(multipartFile.get("multipartFile"));
            $.ajax({
                url: 'http://localhost:3000/add/photo',
                type: 'post',
                data: {
                    multipartFile
                },
                headers: {
                    Authorization: "Bearer " + store.state.user.token,
                },
                cache: false,
                processData: false,
                contentType: false,
                success: resp => {
                    console.log(resp);
                }
            })
        }

运行结果及详细报错内容

文件上传后前端输出:

img

加入formdata后上传时载荷:

img

后端输出接收到的数据

img

我的解答思路和尝试过的方法

尝试过修改headers,使用其他变量封装event.target.files[0].name,结果不变。
然后修改为element-ui,载荷数据变为:
------WebKitFormBoundarygSTFEPgeDCpZA2un Content-Disposition: form-data; name="file"; filename="IMG_
等内容,后端接收到依然为空
然后使用API测试工具测试,成功上传,应该是前端问题,但是不知道怎么解决

怎么才能正常传递文件
  • 写回答

1条回答 默认 最新

  • 诗人远行 2022-12-28 16:57
    关注

    1.data后面直接跟multipartFile ,不用在{multipartFile},

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月5日
  • 已采纳回答 12月28日
  • 创建了问题 12月28日

悬赏问题

  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事: