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: ' 图片保存失败!' })
  })
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)文件不能写入
8136浏览 • 3回复 已解决
request下载文件不能覆盖现有文件
1955浏览 • 1回复 待解决
hpm下载库出错,不能下载,请指点
6602浏览 • 1回复 待解决
不能下载SDK怎么回事?
2380浏览 • 1回复 待解决
HarmonyOS UI样式不能封装至其他文件
210浏览 • 1回复 待解决
现在不能直接创建.ts的文件吗?
266浏览 • 1回复 待解决
File公有目录是不能不能创建 ?
2999浏览 • 1回复 待解决
HarmonyOS watch不能监听provide
105浏览 • 1回复 待解决
HarmonyOS tabs不能设置左对齐
136浏览 • 1回复 待解决