后端返回数据流的格式

1、以下是返回的数据

2、将返回的数据流转成base64

复制代码
const pdfBase64 = uni.arrayBufferToBase64(res.data)

3、将pdfBase64打印出来,查看是否转的正确👉测试

以下是完整实现的代码:

复制代码
uni.request({
        url: 'print/' + id,
        method: 'GET', // 按你实际请求方式改
        timeout: 30000,
        // 关键配置:必须指定响应类型为 arraybuffer
        responseType: 'arraybuffer',
        success: (res) => {
            const pdfBase64 = uni.arrayBufferToBase64(res.data)
            console.log(pdfBase64)
            // 1. 生成文件名
            const fileName = `文档_${new Date().getTime()}.pdf`;
            // 2. 获取 APP 本地可写目录
            const filePath = `_doc/${fileName}`;

            // 3. 创建文件并写入 Base64 数据
            plus.io.requestFileSystem(plus.io.PRIVATE_DOC, function (entry) {
                entry.root.getFile(fileName, { create: true }, function (fileEntry) {
                fileEntry.createWriter((writer) => {
                    console.log(writer)
                    // 写入成功
                    writer.onwrite = () => {
                        console.log("写入成功")
                        uni.showToast({ title: 'PDF 保存成功', icon: 'success' });
                        // 打开预览 PDF
                        openPdf(filePath);
                    };
                    console.log("开始写入数据")
                    writer.writeAsBinary(pdfBase64)
                    console.log("写入数据完成")
                    
                }, (err) => {
                    console.error("创建写入器失败:", err);
                });
                }, (err) => {
                console.error("创建文件失败:", err);
                });
            }, (err) => {
                console.error("获取目录失败:", err);
            });
            
        }
    });

还可以使用uni.downloadFile方法

👉具体的使用方法👈

相关推荐
点心的游戏开发世界26 分钟前
GDScript 入门笔记:目录
开发语言·笔记·游戏引擎·godot
洋不写bug34 分钟前
二叉树(二) 常见基础操作解析|结点数、树高、查找结点、判断完全二叉树
java·开发语言·数据结构·完全二叉树·二叉树结点数·树高·查找结点
果果燕36 分钟前
实习笔记(六)主机按钮状态上报完整流程
开发语言·c++·php
平头哥技术团队1 小时前
Day 16 | 用 ul、ol、li 一个标签,把散资料收成有序的技能清单页
开发语言·前端·html·html5
代码青铜z1 小时前
不会写代码做小程序,模板开发和AI 编程靠谱吗?创业前先看这 5 件事
前端
统计学小王子1 小时前
数学建模国赛倒计时 2 天 ——《统计模型精讲(广义线性模型 R 语言实例 + 分析)》
开发语言·数学建模·r语言
小傅哥1 小时前
Java + DDD,1:1 复刻 Deepseek Harness 项目
前端·后端·ai编程
此冬歌咏1 小时前
自动化服务器运维监控系统(python+shell)
linux·运维·服务器·开发语言·python·自动化
积硅步致千里2 小时前
Word 里的 .wmf 其实是 EMF:一次 metafile 转 PNG 排障
前端·后端
mayaairi2 小时前
Vue2 组件通讯(二):ref、自定义事件与provide/inject实战
前端·javascript·vue.js