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
2天前
浏览
收藏 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
微信
回复
2天前
相关问题
润和Neptune(W800)文件不能写入
7947浏览 • 3回复 已解决
request下载文件不能覆盖现有文件
1848浏览 • 1回复 待解决
hpm下载库出错,不能下载,请指点
6480浏览 • 1回复 待解决
不能下载SDK怎么回事?
2187浏览 • 1回复 待解决
HarmonyOS UI样式不能封装至其他文件
154浏览 • 1回复 待解决
现在不能直接创建.ts的文件吗?
186浏览 • 1回复 待解决
HarmonyOS watch不能监听provide
31浏览 • 1回复 待解决
File公有目录是不能不能创建 ?
2899浏览 • 1回复 待解决
HarmonyOS profiler里面不能选择设备
208浏览 • 2回复 待解决
HarmonyOS tabs不能设置左对齐
46浏览 • 1回复 待解决
不能报名公测为什么?
7127浏览 • 1回复 待解决