首页 IT技术内容详情

vue axios post请求传递 FormData 类型参数

2021-06-18 53379 小付

参考链接:


axios 上传file文件遇到的坑, no multipart boundary was found


axios 封装使用、拦截特定请求、判断所有请求是否加载完毕


前端请求方法中

      const formData = new FormData()

 

      formData.append('role', 1)

      formData.append('excelFile', fileObj)

 

      const config = {

        headers: {

          'Content-Type': 'multipart/form-data'

        }

      }

 

      const { data: res } = await this.$http.post('admin/user/add', formData, config)

需要设置请求头的 Content-Type 为 multipart/form-data (我解决问题查的有很多文章说不需要设置,我试过了没用,不设置就是自动添加默认的类型,而不是我们要的 FormData)


注意:不要序列化 formData ,post请求需要序列化(通常用qs.stringify()),但用post请求传 FormData 不需要


如果序列化了 formData ,后端接收的参数就会为null(这个问题弄了我半天,才发现是序列化的问题)


附赠:判断axios请求数据是否为formData类型还是普通Object


后端接收参数

@PostMapping("/admin/user/add")

@ResponseBody

public Map<String, Object> addUserByExcel(@ModelAttribute UserExcelVO userExcelVO) throws Exception {

 

}

后端用 java对象 接收参数


注意:跨域问题

————————————————

版权声明:本文为CSDN博主「羽Orz」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_41786574/article/details/105015565


相关标签: # vue

 暂无评论,快来抢沙发吧~

发布评论