HarmonyOS 文件不能下载,提示不能写入磁

代码如下:

let imageUrl = this.imageList[this.curIndex].url;
if (!imageUrl) {
  return
}
http.createHttp().request(imageUrl)
  .then(async (data: http.HttpResponse) => {
    try {
      let imageData = data.result as ArrayBuffer
      let helper = photoAccessHelper.getPhotoAccessHelper(GlobalContext.getContext());
      helper.createAsset(photoAccessHelper.PhotoType.IMAGE, 'jpeg')
        .then((uri) => {
          let file = fs.openSync(uri, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
          fs.writeSync(file.fd, imageData);
          fs.closeSync(file.fd);
          promptAction.showToast({ message: ' 图片保存成功!' })
        })
        .catch((error: BusinessError) => {
          promptAction.showToast({ message: ' 图片保存失败!' })
        });
    }
    catch (e) {
      promptAction.showToast({ message: ' 图片保存失败!' })
    }
  })
  .catch((error: Error) => {
    promptAction.showToast({ message: ' 图片保存失败!' })
  })
  • 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.
  • 27.
HarmonyOS
2024-12-24 15:19:26
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

http.createHttp方式请求数据流大小存在5M限制,当前使用动图超过当前大小限制导致报错,需要下载数据超过5m时可使用http.requestInstream替换,使用可参考文档中样例方式:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-http-V5#requestinstream10

分享
微博
QQ
微信
回复
2024-12-24 16:26:13
相关问题
润和Neptune(W800)文件不能写入
8969浏览 • 3回复 已解决
request下载文件不能覆盖现有文件
2649浏览 • 1回复 待解决
hpm下载库出错,不能下载,请指点
7242浏览 • 1回复 待解决
不能下载SDK怎么回事?
3204浏览 • 1回复 待解决
HarmonyOS UI样式不能封装至其他文件
655浏览 • 1回复 待解决
现在不能直接创建.ts的文件吗?
930浏览 • 1回复 待解决
HarmonyOS .ets文件不能使用方法重载
756浏览 • 1回复 待解决
File公有目录是不能不能创建 ?
3567浏览 • 1回复 待解决
HarmonyOS watch不能监听provide
527浏览 • 1回复 待解决