首页 > 解决方案 > 在 Post 中将文件和对象传递给正文

问题描述

我得到 blob url 并能够为每个 blob url 创建一个文件并将它们发送到后端,但是,我还需要传递一堆不同对象的属性。(这些属性根本与文件无关)

问题是我无法将它们一起发送到后端。当然,我尝试只发送一个对象并将我的表单数据(文件)作为对象属性传递,但它不起作用。我还尝试了内容类型:multipart/form-data。

请不要担心语法错误。

export const sendObjectAndFile = (myObj, file) => {
 return function(dispatch) {
    let form = new FormData();
    form.append('pdf file', file)
    return fetch(URL, {
        method: "POST",
        credentials: 'include',
        body: myObj /* If I pass only form or only myObj that works, however, how can I send them together */
    }).then(response => 
        if (response.success) {
        } else {
        }
    });
}

了解我如何处理支持的 blob url(我假设我只传递了文件)

var myFile = Request.Files;

标签: c#reactjspostupload

解决方案


您可以尝试 formData.append(${property name}, object),然后传递整个表单数据。

例如。

let formData = new FormData();
formData.append("myFile", $("#file")[0].files[0]);
formData.append("title", $("#title").val();

然后在 C# 控制器中

public void Post(HttpPostedFileBase myFile, string title){
// implementation here
}

推荐阅读