You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将大型POJO直接转为Blob:规避JSON.stringify字符串长度限制

大体积POJO转Blob的浏览器端解决方案需求

背景

我的应用中有如下代码:

let blob = new Blob([JSON.stringify(json)], {type: "application/json"});

但这段代码有时会执行失败,原因是Chrome中字符串的最大长度约为500MB,而json对应的POJO对象体积有时会超过这个限制。

问题

我需要一种能直接将内存中的POJO(即json变量)转换为Blob的方法,可通过流式序列化并实时写入ArrayBuffer的方式实现,或者采用其他能避免「字符串长度超限」错误的方案。

注意事项

  • 方案必须支持浏览器环境;
  • 若推荐现有库,不能仅支持数组类型的JSON,需适配任意嵌套的JSON对象(例如90%数据集中在foo.bar.whatever路径下的复杂结构);
  • 不接受以流为输入、输出流片段的方案(如json-stream-stringify、streaming-json-stringify),要求输入为内存中的POJO,输出为包含完整序列化JSON的Blob。

相关参考

  • 有开发者在Node.js环境下遇到类似问题,探讨了如何用JSONStream序列化大对象;
  • 另一个相关讨论是关于在Node.js中如何用流序列化大型嵌套对象,若能在浏览器中实现生成超长度JSON的ArrayBuffer,也可作为可行方案。

内容的提问来源于stack exchange,提问作者joe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 07:02:08