以下代码演示了如何使用 `uni.request` 发起 GET 请求,并处理返回的文件流数据。
主要就是将响响应的数据类型修改成 arraybuffer
最后使用uni.arrayBufferToBase64()方法将 ArrayBuffer 对象转成 Base64 字符串
- 去除 Base64 头部信息
提取纯数据部分,确保正确解码。- 转换为 ArrayBuffer
使用 UniApp 提供的 base64ToArrayBuffer 方法转换数据。- 写入临时文件
将数据写入小程序的临时目录,生成临时文件路径。- 保存到相册
调用 uni.saveImageToPhotosAlbum 并处理权限和结果。
testSaveBase64ToPhotoAlbum.vue代码
- 用户触发
保存操作必须由用户主动触发(如点击按钮),否则 iOS 可能拦截。- 权限处理
首次调用会弹窗请求权限。
若用户拒绝,捕获错误并引导前往设置开启:
- 文件格式
根据 Nano Banana 教程 Base64 的 MIME 类型(如 image/png)动态设置文件后缀,确保系统正确识别。- 临时路径
使用 wx.env.USER_DATA_PATH 获取小程序文件系统根目录,避免路径问题。- 性能优化
大图片转换可能耗时,建议添加加载提示:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/273367.html原文链接:https://javaforall.net
