无法使用 nodejs 将 url 图像响应转换为缓冲区

Unable to convert url image response to buffer using nodejs

我正在使用 nodejs 从 url 下载图像。但我无法将响应转换为缓冲区。我从回复中收到的图片是乱码。 以下是我的代码:

app.get('/test', async (req, res) => {
  const data = await fetch("https://api.image/test.jpg");
  res.send(Buffer.from(data));
});

fetch API 的响应是:

下载图片后出现错误:

我也尝试了以下缓冲区编码,但下载图像后仍然出现上述错误:

 Buffer.from(data,'base64');
 Buffer.from(data,'ascii');
 Buffer.from(data,'base64url');
 Buffer.from(data,'binary');
 Buffer.from(data,'hex');
 Buffer.from(data,'latin1');
 Buffer.from(data,'ucs-2');
 Buffer.from(data,'ucs2');
 Buffer.from(data,'utf-8');
 Buffer.from(data,'utf16le');
 Buffer.from(data,'utf8');

我认为这应该是这样的:

app.get('/test', async (req, res) => {
  const data = await fetch("https://api.image/test.jpg");
  res.send(Buffer.from(await data.arrayBuffer()));
});