我正在使用本地地址将图像发送到API,但由于某种原因,它无法识别图像。如果我使用Google上的链接,效果很好。代码看起来像这样:
unirest.post(requestString)
.header("X-RapidAPI-Key", API_KEY)
.field("urls", "http://localhost:4000/uploads/1570544614486-test.jpg")
.field("album", ALBUM_NAME)
.field("albumkey", ALBUM_KEY)
.field("entryid", entryId)
.end(result => {
console.log(result.body);
});
我相信这一次只能在一个域上运行,但是我现在需要它才能进行测试。如何使用我的本地主机进行此项工作?
答案 0 :(得分:2)
您尚未确切指定要连接的API,因此您的里程可能因不同的API而异。
但是,根据您的错误消息,我确定您正在尝试利用Lambda Face Recognition and Face Detection API via RapidAPI。该Web服务的(链接的)文档显然清楚地表明,您试图与上述urls
URL一起使用的localhost
参数实际上是用逗号分隔的可公开访问的图像文件的一组URL。在这种情况下,远程API可能无法解析localhost
,因为(a)可能不知道IP localhost
应该指的是什么,并且(b)您的{ {1}}不会响应来自更广泛的Internet的HTTP请求。
相反,修改您的请求以使用localhost
参数(类型files
)来上传图像的原始二进制数据。