小程序wx.uploadFile真机调试 后端接口无法获取文件
发布于 6 年前 作者 swen 7305 次浏览 来自 问答

采用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 获取文件依旧为空)

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

2 回复

请移步uni-app官方社区

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

回到顶部