javascript - 从八位字节流转换为 blob 后文件大小减少了很多
问题描述
后端向我发送 octet-stream 类型的 PDF 文件(字节数组)。在前端,我需要将此八位字节流转换为 Blob,用户应该能够下载此文件并在 Google Chrome 中打开此 PDF。
但是当我从后端收到文件时,我看到了以下文件参数:
{size: 4909, type: octet-stream}
将流转换为 Blob 后,我得到以下参数:
Blob(15): {size: 15, type: ""}
如您所见,大小减少了很多,当我尝试下载文件时,出现错误,文件损坏。
代码示例:
api.get("http://url-example").then(data => {
// On this step: data = {size: 4909, type: octet-stream}
let newBlob = new Blob([data]);
// On this step: newBlob = Blob(15): {size: 15, type: ""}
const objectUrl = window.URL.createObjectURL(newBlob);
}
解决方案
推荐阅读
- ios - Moya - 如何启用样本数据?
- sql-server - SQL fetch 正在工作,但在触发器中不起作用
- python - WxPython将选择转换为数值TypeError
- scala - 找不到参数 F 的隐式值:cats.Applicative[F]
- linux - 无法在 linux 机器上的 chrome 浏览器中运行 nightwatch.js 测试
- c# - 使用 [X] 按钮打开/显示其他表单单击 C#
- javascript - 如何在应用程序中从 JSON 服务器获取一些特定数据
- node.js - Node js:libuv 线程池是如何工作的?
- java - 将变量从片段发送到 MainActivity
- sql-server - docker pull 命令不允许密码并且总是从守护进程得到错误响应:未授权:需要身份验证