我正在使用 2 个 api,即 https://api.nationalize.io/?name= 从某人的名字猜测其国籍,以及 http://country.io/names.json 来转换两者将国家/地区代码写成国家/地区名称。这个系统工作得很好,但在测试时我注意到名字 corrine 返回了 SQ 作为国籍。 API 使用 ISO 3166-1 alpha-2,但 SQ 不代表该系统中的任何国家/地区。另一个命名系统表示它代表阿尔巴尼亚,但阿尔巴尼亚从 api 返回为 AL。请帮忙
测试:https://api.nationalize.io/?name=corrine 阿尔巴尼亚:https://api.nationalize.io/?name=Alteo
尝试寻找带有 SQ 标签的国家,但找不到任何
是的,SQ错了。正确的结果是 SG,而不是 SQ。
所以,我们可以尝试创建这样的条件:
fetch(`https://api.nationalize.io?name=corrine`)
.then((res) => res.json())
.then((data) => {
const fixedResult = data.country
?.map((country) => {
if (country.country_id === "SQ") {
return { ...country, country_id: "SG" };
} else {
return country;
}
})
console.log(fixedResult)
});
无论如何,你可以在nametionalize.vercel.app中查看我的项目。快乐编码!