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

如何从Node.js 18 Fetch API返回的Blob获取Node.js Buffer?

从Fetch获取Buffer或实现Blob到Buffer的转换

在Node.js环境中(Buffer是Node.js专属类型),你可以通过两种方式实现需求:

1. 直接从Fetch响应生成Buffer(推荐)

不需要先转换成Blob,直接将响应转为ArrayBuffer后,用Buffer.from()包装成Node.js的Buffer,能减少一次转换开销:

const buffer = await fetch("https://example.com/image.png")
  .then(res => res.arrayBuffer())
  .then(ab => Buffer.from(ab));

2. 将已有的Blob转换为Buffer

如果已经拿到了Blob对象,先把Blob转为ArrayBuffer,再转成Buffer即可:

// 假设已有blob实例
const arrayBuffer = await blob.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);

注意:浏览器环境本身没有Buffer类型,若你在浏览器中需要适配期望Buffer的库,通常可以直接传入ArrayBuffer替代,或者使用库提供的适配方法转换。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 16:03:11