axios配合formData提交数据的困惑

发布于 2022-09-07 16:10:59 字数 711 浏览 21 评论 0

我需要实现一个图片上传的功能 上传后提交到后台 不光是有图片 还有其它的参数
现在遇到了一个很麻烦的问题 看了很多资料都说这个formData是利用原型封装的方法,添加进去的值都是私有属性 正常是访问不到的 需要通过formData.get()方法访问
但是我必须能通过formData.cityNo这样点语法来访问 因为我请求接口的时候除了图片之外其它的参数是需要进行加密处理的 也就是说我在处理参数的时候需要判断如果是图片文件就不处理
关键是现在没法直接访问参数 有什么办法可以解决这个问题吗
let formData = new FormData(this.$refs.form);

  formData.append('file1',this.file1)
  formData.append('file2',this.file2)
  accountManage.changeBankCard(formData).then(res => {
    console.log(res)
  })

这个params就是上面的formData 我通过for in遍历的时候实际上没有遍历出里面的参数 所以我这个判断没作用
for (var key in params) {

    if(key != 'file1' && key != 'file2' ) {
      a[a.length] = key;
    }

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

画尸师 2022-09-14 16:10:59

只是要获取属性然后加密么?

试试for key of formData.keys()然后formData.set(key, value)呢?

https://developer.mozilla.org...

吲‖鸣 2022-09-14 16:10:59

json也可以带参数传文件啊。

{
name:'',
birthday:'',
photo: BAS64
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文