关于jquery的ajax post数据的问题

这是前台ajax方法
Image

这是传输前的files内容
Image

这是提交之后的后台req.body接受到的内容
Image

请问为啥会自动遍历输出了files呢 ?我别的什么也没干呀,只想将files作为整体返回给后台

阅读 2.7k
2 个回答

数据传输的时候是以key/value的形式拼接的,value的值必须是string,如果是复杂对象({}/[]),会遍历后拆成最小的单元以满足key/value键值对。建议你将files值转化为string(JSON.stringify(files)),后台收到数据后再转换回来(JSON.parse())。

$.ajax({
  url:'xxx',
  type: 'post',
  dataType: 'json',
  data: {
    title: title,
    belongTo: belongTo,
    content: content,
    files: JSON.stringify(files)
  }
})

就这样没问题,后台接收到的就是 files 整体。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题