【发布时间】:2023-04-05 20:25:01
【问题描述】:
我正在向第三方 API 发送一个 GET 请求,它返回一个奇怪的字符串(应该是一个图像)。
axios.get(`${URL}/test`, {
headers: {
'Content-Type': 'application/json',
},
auth: {
username: USERNAME,
password: PASSWORD
},
responseType: 'blob'
})
.then(async (response) => {
console.log(response.data)
return res.json(response.data);
})
.catch((err) => {
console.log(err);
return res.json("ERROR");
});
响应是:
"����\u0000\u0010JFIF\u0000\u0001\u0001\u0000\u0000\u0001\u0000\u0001\u0000\u0000��\u0000C
如何将其转换为图片或图片/网址?
谢谢
【问题讨论】:
-
你试过
responseType: 'json'或responseType: 'text'吗? -
我刚试过。响应是一样的
-
哦,对不起,我看错了。如果是图片,应该是
responseType: 'arraybuffer'或者responseType: 'stream',因为不是json,使用res.json没有意义。您可以按照答案或使用fs.writeFile(filePath, Buffer.from(data, encoding))保存文件。 -
谢谢。我不想保存它,我想获取 base64 图像并将其发送回我的 React 应用程序,我将在我的网站上显示图像