HarmonyOS 上传图片失败

用request.uploadfile()上传文件时,报the parameters check fails Parameter verification failed, GetInternalPath failed, filePath is not valid,上传的路径如图所示

HarmonyOS 上传图片失败  -鸿蒙开发者社区

HarmonyOS
2024-12-24 14:02:20
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

request.uploadFile不支持file协议路径,要把文件拷贝到沙箱目录,传递沙箱路径

目前只支持沙箱路径中cache缓存目录上传下载。 非cache目录下上传下载解决方案: 将公共路径的文件(picker选择),拷贝至沙箱路径中,可完成上传。

Demo:

pickerPhoto() {
  try {
    let options = new picker.PhotoSelectOptions();
    options.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE;
    options.maxSelectNumber = 1;
    let p = new picker.PhotoViewPicker();
    p.select(options).then((res: picker.PhotoSelectResult) => {
      console.info("tag photo is uri" + res.photoUris[0])
      this.saveFile(res.photoUris[0]);
    })
  } catch (e) {
    console.error("tag select tailed..")
  }
}

async saveFile(uri:string){
  // 将公共目录的文件,拷贝至沙箱路径
  let destDist = getContext(this).cacheDir + "/test.png";
  let src = fs.openSync(uri, fs.OpenMode.READ_ONLY);
  let dst = fs.openSync(destDist, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
  fs.copyFileSync(src.fd, dst.fd);
}
分享
微博
QQ
微信
回复
2024-12-24 16:16:48
相关问题
HarmonyOS 图片上传失败
1062浏览 • 1回复 待解决
HarmonyOS axios上传文件失败
1164浏览 • 1回复 待解决
HarmonyOS 图片上传
768浏览 • 1回复 待解决
HarmonyOS 无法上传图片
1761浏览 • 1回复 待解决
HarmonyOS 上传图片问题
806浏览 • 1回复 待解决
HarmonyOS 上传图片异常
839浏览 • 1回复 待解决
HarmonyOS web如何上传图片
689浏览 • 1回复 待解决
HarmonyOS axios如何上传图片
877浏览 • 1回复 待解决
HarmonyOS图片上传相关问题
1359浏览 • 1回复 待解决
HarmonyOS 图片上传httpRequest格式问题
780浏览 • 1回复 待解决
HarmonyOS 图片上传问题咨询
937浏览 • 1回复 待解决
HarmonyOS web上传文件和图片
1041浏览 • 1回复 待解决
HarmonyOS axios如何上传多张图片
1225浏览 • 1回复 待解决
HarmonyOS如何实现图片上传
1153浏览 • 1回复 待解决
使用FilePick上传uri失败,报错201
2609浏览 • 1回复 待解决
HarmonyOS 图片压缩失败
1011浏览 • 1回复 待解决
HarmonyOS 图片保存失败
1125浏览 • 1回复 待解决
HarmonyOS 上传图片到服务器
1041浏览 • 1回复 待解决
HarmonyOS 怎么对图片进行压缩上传
1123浏览 • 1回复 待解决
HarmonyOS Web 图片上传功能失效
1089浏览 • 1回复 待解决