我正在使用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');
uj5u.com熱心網友回復:
我認為這應該是這樣的:
app.get('/test', async (req, res) => {
const data = await fetch("https://api.image/test.jpg");
res.send(Buffer.from(await data.arrayBuffer()));
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/446935.html
標籤:javascript 节点.js 图片 缓冲 回复
