gpt4 book ai didi

javascript - 使用美国农业部 REST API

转载 作者:行者123 更新时间:2023-11-30 16:02:37 25 4
gpt4 key购买 nike

无论我多么努力,我似乎​​都无法弄清楚如何使用 USDA REST API。我已经学习了大约 6 个关于如何使用 REST API 的不同在线教程,所有这些教程都不适用于这个特定的 API(我确定它是我遗漏的一些小东西,但我已经浪费了无数小时来做/看教程而没有成功)。

这是他们的 API 的链接: https://ndb.nal.usda.gov/ndb/doc/apilist/API-FOOD-REPORT.md

这是我在 JavaScript 中输入的内容:

xhr = new XMLHttpRequest();
xhr.open("GET", "http://api.nal.usda.gov/ndb/reports/", true);
console.log(xhr.status);

API 说要在参数中传递你的 API KEY,但这对我来说毫无意义,因为我读过的每一个教程都没有解释如何将 KEY 作为参数传递......如果有人介意花点时间编写访问此 API 所需的代码我将感激不尽。

更新:我也试过 JQuery 方法如下:

$.get(
"http://api.nal.usda.gov/ndb/reports",
{
"api_key": "API KEY",
"ndbno": "01009"
},
function(data) {
console.log(data);
}
);

没有运气。

更新 2: 离开 JQuery 示例大约 5 分钟后,我在 chrome 控制台中收到一条错误消息:

XMLHttpRequest 无法加载 http://api.nal.usda.gov/ndb/reports?api_key=(my API key )&ndbno=01009。请求的资源上不存在“Access-Control-Allow-Origin” header 。产地' http://localhost:3000 ' 因此不允许访问。响应具有 HTTP 状态代码 403。

最终更新:问题显然出在我的 ISP 上。需要处理:(

最佳答案

您引用的文档有一个示例请求 URL:

http://api.nal.usda.gov/ndb/reports/?ndbno=01009&type=b&format=xml&api_key=DEMO_KEY

您只需替换 ndbno、type、format 和 api_key 值(“=”之后的位)。例如,如果您的 API key 是 12345,您需要像这样更改它:

http://api.nal.usda.gov/ndb/reports/?ndbno=01009&type=b&format=xml&api_key=12345

一个完整的,尽管“很差”的实现是:

var apiKey = "DEMO_KEY";
var ndbno = "01009";
var type = "b";
var format = "json";

var url = "http://api.nal.usda.gov/ndb/reports/?ndbno=" + ndbno + "&type=" + type + "&format=" + format + "&api_key=" + apiKey;

$.get(url, function( data ) {
alert( "Data Loaded: " + JSON.stringify(data) );
});

关于javascript - 使用美国农业部 REST API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37493970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com