HarmonyOS 图片上传问题咨询

在通过系统选择图片后,获取到的图片地址会是:file://media/Photo/13/IMG_1722849421_007/screenshot_20240805_171521.jpg这个地址可以直接通过axios上传吗,还是要将path进行转换后才能?

HarmonyOS
2025-01-10 09:09:03
598浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
put_get

相册路径不能直接用于传输,可以通过将相册图片复制到应用沙箱路径下,然后再用沙箱路径下的文件进行传输。从相册复制文件到沙箱目录,可参考如下代码:

function SavePhotoToFileDir(){
  try {
    let photoSelectOptions = new picker.PhotoSelectOptions();
    photoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE;
    photoSelectOptions.maxSelectNumber = 1;
    let photoPicker = new picker.PhotoViewPicker();
    let uris: Array<string> = [];
    photoPicker.select(photoSelectOptions).then((photoSelectResult: picker.PhotoSelectResult) => {
      uris = photoSelectResult.photoUris;
      let fileArray = uris[0].split("/");
      let fileName = fileArray[fileArray.length - 1];
      let file = fs.openSync(uris[0], fs.OpenMode.READ_ONLY);
      let cacheDir = mContext.filesDir;
      let dstPath = cacheDir + '/' + fileName;
      let file2 = fs.openSync(dstPath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
      fs.copyFileSync(file.fd, file2.fd);
      fs.closeSync(file);
      console.info('PhotoViewPicker.select successfully, photoSelectResult uri: ' + JSON.stringify(photoSelectResult));
    }).catch((err: BusinessError) => {
      console.error('PhotoViewPicker.select failed with err: ' + JSON.stringify(err));
    });
  } catch (error) {
    let err: BusinessError = error as BusinessError;
    console.error('PhotoViewPicker failed with err: ' + JSON.stringify(err));
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
分享
微博
QQ
微信
回复
2025-01-10 10:14:53


相关问题
HarmonyOS头像上传问题
1353浏览 • 1回复 待解决
HarmonyOS request文件上传问题
630浏览 • 1回复 待解决
HarmonyOS日志文件上传问题
1290浏览 • 1回复 待解决
HarmonyOS 上传图片问题
536浏览 • 1回复 待解决
HarmonyOS图片上传相关问题
993浏览 • 1回复 待解决
HarmonyOS 图片上传httpRequest格式问题
492浏览 • 1回复 待解决
HarmonyOS保存图片到系统相册问题咨询
1361浏览 • 1回复 待解决
HarmonyOS 自定义弹框遮罩透传问题
584浏览 • 1回复 待解决
HarmonyOS 图片上传
487浏览 • 1回复 待解决
HarmonyOS TLSSocket建连ca入参必传问题
513浏览 • 1回复 待解决
HarmonyOS 无法上传图片
513浏览 • 1回复 待解决
HarmonyOS 图片上传失败
661浏览 • 1回复 待解决
HarmonyOS 图片解码咨询
695浏览 • 1回复 待解决
HarmonyOS 上传图片异常
611浏览 • 1回复 待解决
HarmonyOS 上传图片失败
1011浏览 • 1回复 待解决
HarmonyOS axios如何上传图片
561浏览 • 1回复 待解决
HarmonyOS web如何上传图片
422浏览 • 1回复 待解决
HarmonyOS上传文件问题
1118浏览 • 1回复 待解决
HarmonyOS如何实现图片上传
867浏览 • 1回复 待解决
HarmonyOS web上传文件和图片
776浏览 • 1回复 待解决
HarmonyOS axios如何上传多张图片
673浏览 • 1回复 待解决
HarmonyOS卡片问题咨询
1063浏览 • 1回复 待解决
HarmonyOS Image问题咨询
743浏览 • 1回复 待解决