javascript - 将对象数据作为 FormData 传递
问题描述
我收到这样的数据:
pert_submit: {systemId: "53183", pert-id: "176061", score: 0, q2c: "3\0", q2t: "", …}
现在我想在我的 post call 中将它作为 FormData 发送。我不能为此目的使用 HTML 表单,所以在 http post 中调用数据为
systemId: "53183", pert-id: "176061", score: 0, q2c: "3\0", q2t: ""
我尝试使用 FormData 作为
var form_data = new FormData();
for ( var key in this.dataObject['pert_submit'] ) {
form_data.append(key, this.dataObject['pert_submit'][key]);
}
我该如何实现呢,以上面指定的格式传递FormData
(systemId: "53183", pert-id: "176061", score: 0, q2c: "3\0", q2t: "")
解决方案
当我需要键和值而不是 Object.keys 时,我喜欢使用 Object.entires。您可以在 .forEach 循环中使用数组解构以干净的方式获取这两个值。
const data = {systemId: "53183", "pert-id": "176061", score: 0, q2c: "3\0", q2t: "" };
const formData = new FormData();
Object.entries(data).forEach(([key, value]) => formData.append(key, value))
console.log([...formData.entries()]);
推荐阅读
- javascript - Google Places Autocomplete API - 输入时的缩写基本方向
- visual-studio-code - VSCode:保存和格式之间的标签大小不同
- java - 从 xml 的其余部分中删除 xml 中的回车和拆分 xml 版本
- android - 不在 Google Play 商店上的 Android 应用程序的 Facebook 社交登录
- jmeter - 在 Jmeter 结果树和报告中看不到所有结果
- reactjs - 将 setState 变量作为参数传递时,如何确保它的值未定义?
- uppy - uppy.io 用于发送 base64 编码数据而不是指定文件输入
- python - 如何使用 apply() 方法在 pandas 列中应用 Geopy?
- c# - 访问模型中的属性 - C#
- spring-webflux - ServerResponse 在执行 Mono 之前返回