[BUG]React/JS/前端 无法通过from-data传递参数

47 阅读1分钟

问题表述

想要通过JS调用后端接口, 但是发现from-data参数传递不过去, 并且通过前端控制台发现参数为空在这里插入图片描述 贴下错误的代码:

            console.log(fileName);
            // 创建 FormData 对象
            const formData = new FormData();
            console.log(formData);
            formData.append('test',"1234");
            formData.append('fileName', fileName);
            console.log(formData);
            // 
            const response = await fetch('http://localhost:8080/download', {
                method: 'POST',
                headers: {
                     'Content-Type': 'application/json'
                },
                body: formData
            });
            console.log(response);

解决方案

问题分为两个部分

  1. 传递参数是因为请求头导致,注释掉即可
                headers: {
                     'Content-Type': 'application/json'
                },
  1. 打印formData为空: 因为fromData是特殊对象,用下面方法即可
// 使用 entries 方法遍历键值对
for (let [key, value] of formData.entries()) {
  console.log(key + ': ' + value);
}

个人介绍

我是DarkChink, 一个什么都懂一点的工程师, 如果有问题欢迎私信