收藏
回答

小程序wx.uploadFile真机调试 后端接口无法获取文件

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.uploadFile 微信iOS客户端 7.0.15 2.13.0

采用uni.app开发,结合uview的u-upload组件


action: this.$H.common.baseurl + '/applets/commonattachment/upLoadFile',
fileList: [],
uploadData: {
		'attType': 'complaint'
  	},
header: {
  		'content-type': 'multipart/form-data',
		'Connection':'keep-alive'
	}

                               //上传方法
                                wx.uploadFile({
				url: this.action,
				filePath: this.lists[index].url,
				name: this.name,
				formData: this.formData,
				header: this.header,
				success: res => {
					// 判断是否json字符串,将其转为json格式
					let data = this.toJson && this.$u.test.jsonString(res.data) ? JSON.parse(res.data) : res.data;
					console.log(data)
					console.log(res)
					if (![200, 201, 204].includes(res.statusCode) || data.success == false) {
						this.uploadError(index, data);
					} else {
						// 上传成功
						this.lists[index].response = data;
						this.lists[index].progress = 100;
						this.lists[index].error = false;
						this.$emit('on-success', data, index, this.lists, this.index);
					}
				},
				fail: e => {
					this.uploadError(index, e);
				},
				complete: res => {
					uni.hideLoading();
					this.uploading = false;
					this.uploadFile(index + 1);
					this.$emit('on-change', res, index, this.lists, this.index);
				}
			});

工具这边请求https是没问题的:

返回结果:

不检验合法域名关闭:

真机调试:

在后端接口日志查看是真机时没有获取到文件,图中①迭代器获取文件name为空。(期间使用@RequestParam("file") MultipartFile file 获取文件依旧为空)

请问这个问题有什么解决思路吗

最后一次编辑于  2020-09-24
回答关注问题邀请回答
收藏

3 个回答

  • 
    2023-07-25

    关键是“name”,值为后端接收文件的字段名

    2023-07-25
    有用
    回复
  • 微喵网络
    微喵网络
    2020-09-24

    请移步uni-app官方社区

    2020-09-24
    有用
    回复
  • 陈宇明
    陈宇明
    2020-09-24

    有没有获取到文件你打印下就知道了

    2020-09-24
    有用
    回复 1
    • 小幸运
      小幸运
      2020-09-24
      没有获取到文件,是空的
      2020-09-24
      回复
登录 后发表内容
问题标签