我正在开发一个从服务器获取图像的 API,它将图像作为 blob 提供,现在我想将该 blob 转换为图像文件并保存在本地
我曾尝试将图像转换为base64,然后将其转换为图像,还尝试了一些stackoverflow修复,但没有一个起作用
这是代码
async function query(data) {
var url;
url = "https://api-inference.huggingface.co/models/prompthero/openjourney";
try {
const response = await request(
{
method: 'POST',
uri: url,
headers: {
'Authorization': 'AUTHTOKEN-HERE!!!',
},
body: JSON.stringify(data),
}
);
const result = await response.blob();
console.log(result)
return result;
}
catch (err) {
console.log("error occured");
console.log(err)
}
}
这是我们如何下载图像文件。
import fs from 'fs';
async function query(data) {
var url;
url = "https://api-inference.huggingface.co/models/prompthero/openjourney";
const response = await fetch(
url,
{
headers: { Authorization: "TOKEN HERE !!!" },
method: "POST",
body: JSON.stringify(data),
}
);
const result = await response.blob();
return result;
}
query({"inputs": "Astronaut riding a horse"}).then(async (response) => {
fs.writeFileSync('downloaded_image.jpg', Buffer.from(await response.arrayBuffer()));
console.log('Image downloaded successfully.');
});
您可以添加错误处理逻辑,但上述逻辑将下载图像。