簡體   English   中英

無法使用 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()));
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM