尝试使用 axios 和 formData 发布数据,但它是空的

Thi*_*ães 5 javascript form-data vue.js axios

我正在使用 Vue3 和 axios 来发布表单FormData,但它是空的,没有传递任何内容。

{“表单数据”:{}}

这就是我正在做的:

const formData= new FormData();
formData.set("name", name);

axios.post("postform",  formData);
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个:

formData.set("name", "John Doe");
axios.post("postform",  formData);
Run Code Online (Sandbox Code Playgroud)

和这个:

formData.append("name", "John Doe");
axios.post("postform",  formData);
Run Code Online (Sandbox Code Playgroud)

但没有成功。没有错误,只是空的。

我用 PHP 检索它们,如下所示:

 echo $request->input("name");
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:

如何使用 发布数据FormData

Hel*_*rld 3

如果您没有发送任何文件(或者您的表单不是 maltipart/form-data),您可以使用以下方法通过 axios 发送数据:

let formData = {};
formData.name =  "John Doe";
axios({
  url: "postform",
  method: "POST",
  data: formData
});
Run Code Online (Sandbox Code Playgroud)

编辑:

如果您要发送任何文件,那么就我而言,以下内容对我有用:


const formData = new FormData();
formData.append("name", "hello world");



axios({
    url: 'postform',
    method: "POST",
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
})
Run Code Online (Sandbox Code Playgroud)