我尝试Remove.bg在一个普通的JS文件中使用www.example.com API,目的是将图像URL作为参数传递,然后将生成的图像输出到HTML主体中的IMG标记。
不幸的是,该项目没有提供此类用法的文档,因为results.data旨在由FileSystem的writeFileSync使用,而我运行的是静态网站,因此无法使用它。
是否有任何方法可以解析所描述的结果,并可能将IMG标记的src设置为最终的、去除背景的图像?
下面是一个到目前为止还没有返回响应的示例代码。提前感谢您的时间!
function removebackground(){
let formData = {
"image_file_b64": "",
"image_url": "https://meta.hapeprime.com/7386.png",
"size": "preview",
"type": "auto",
"type_level": "1",
"format": "auto",
"roi": "0% 0% 100% 100%",
"crop": false,
"crop_margin": "0",
"scale": "original",
"position": "original",
"channels": "rgba",
"add_shadow": false,
"semitransparency": true,
"bg_color": "",
"bg_image_url": ""
};
axios({
method: 'post',
url: 'https://api.remove.bg/v1.0/removebg',
data: formData,
responseType: 'arraybuffer',
headers: {
'X-Api-Key': 'API_KEY',
},
encoding: null
})
.then((response) => {
if(response.status != 200) return console.error('Error:', response.status, response.statusText);
console.log(response);
})
.catch((error) => {
return console.error('Request failed:', error);
});
}
1条答案
按热度按时间wqsoz72f1#
这取决于API的响应类型。
如果它类似于https://clipdrop.co/apis/docs/remove-background API,它将以blob响应,使用它,您可以使用
URL.createObjectURL(response)
创建有效的src路径:你可以在这里找到一个例子:https://github.com/initml/clipdrop-api-samples/blob/main/web/remove-objects-tfjs/components/Result.tsx#L63