我正在尝试从USDA数据库中检索信息。我正在尝试使用此URL发出JSON请求:
如果我只是获取该链接,那么我会收到我预期的JSON响应。
fetch('https://api.nal.usda.gov/ndb/search/?format=json&q=butter&fg=Dairy%20and%20Egg%20Products&max=25&offset=0&sort=r&api_key=DEMO_KEY')
.then((responseData) => {
console.log(responseData);
}).catch((error) => {
console.log("error : " +error);
});
但是,我希望将其分解为JSON格式,因此我尝试按以下方式获取它:
fetch('https://api.nal.usda.gov/ndb/search/', {
method: 'POST',
headers: { 'Accept': 'application/json','Content-Type': 'application/json',},
body: JSON.stringify({
"format": "json",
"q": "butter",
"max": "25",
"offset": "0",
"sort": "r",
"api_key": "MXWwB8DMBxbCIlFHfSevDtp0cIvOofA6Xsn16BYj"
})
}).then((response) => response.json())
.then((responseData) => {
console.log(responseData);
}).catch((error) => {
console.log("error : " +error);
});
然而,这会返回一个错误,我错过了我的API_KEY。你能否告诉我API_KEY没有经历的错误。
更新了尝试(不使用POST方法):
fetch('https://api.nal.usda.gov/ndb/search/', {
"format": "json",
"q": "butter",
"max": "25",
"offset": "0",
"sort": "r",
"api_key": "DEMO_KEY"
}
).then((response) => response.json())
.then((responseData) => {
console.log(responseData);
}).catch((error) => {
console.log("error : " +error);
});
}