axios 我可以以formData格式传输对象中的文件吗?

jtoj6r0c  于 2023-06-22  发布在  iOS
关注(0)|答案(1)|浏览(112)

BackEnd提供的表单如下

{
    dataInputDto: {

        itemIndex: string,
        addAuditData: {
                dataAnswer: string,
                fileList: Array<File>
        }

    }
}

我正在使用React,并希望以multipart/formData格式发送数据。但是我从来没有传输过这种格式的文件,所以请给予我一些建议!

31moq8wy

31moq8wy1#

希望你一切都好。
让我与您分享一个代码片段,以便您可以参考它并进一步进行。

formData的Submit函数

const onSubmit = async (data) => {
let formdata = new FormData();
formdata = { ...formdata, img: data.image[0] };
console.log(formdata, formdata.img.name);

let response = await axios.post(
  `${process.env.REACT_APP_BASEURL}/uploadImg`,
  formdata,
  { headers: { "Content-Type": "multipart/form-data" } }
);

组件的返回函数如下,渲染表单

<form onSubmit={handleSubmit(onSubmit)} encType="multipart/form-data">
Id: <br />
<input type="text" {...register("id")} defaultValue={id} readOnly />
<br />
Name: <br />
<input type="text" {...register("name")} required />
 
Image: <br />
<input type="file" {...register("image")} required/>
<br />
<input type="submit" value="Submit" required/>
</form>

上面的代码段是指图像,但你也可以继续相同的传输文件。
请接受答案,如果它为您的查询工作。感谢和问候。

相关问题