用APILayer食品API分析菜谱和营养状况

790 阅读6分钟

很少有东西比食物更能影响我们的生活。它是我们出于各种原因而参加的一种日常仪式。与朋友和家人一起吃饭是许多人一天中的亮点。但不仅如此,食物是我们用来获取身体生存所需营养的主要工具。

然而,食物也会对我们的健康产生负面影响。例如,摄入过多的食物通常会导致体重增加及其相关的健康问题。然后是对某些食物的过敏,一旦食用,可能会导致某人病重或死亡。这就是为什么人们获得有关他们所吃食物的准确营养信息是如此重要。

互联网的发明显然改变了人们获取信息的方式。无论你正在建立什么样的应用程序,无论是网络,移动,甚至是桌面,来自APILayerEdam的基于食物的API可以使你的应用程序为用户提供他们需要的准确的营养信息。

什么是APILayer和Edam公司?

APILayer公司专注于建立基于网络的API。他们已经建立了几十个API产品,被大公司和数百万人使用,为了处理如此高的负载和需求,他们建立了一个快速、可扩展和可靠的基础设施。他们不仅在其基础设施上运行自己的API,而且还运行其他公司的API,并通过APILayer市场提供这些API。Edamam公司面向营养的API就是其中的一部分。

Edamam公司是营养数据和分析的领先供应商,他们的目标是捕捉世界上的食品知识,并将其分解,以帮助人们在商店、餐馆和厨房做出明智的决定。

在APILayer市场中,有三个Edam APIs。

营养分析API--提交任何食谱的全文,或只提交单一成分以检索营养内容。

食品和杂货数据库API-访问Edam公司的食品和杂货数据库,其中包含90万种基本食品、餐馆物品和消费包装食品。通过饮食和其他由Edamam产生的健康过滤器来过滤它们。

食谱搜索API-搜索Edam公司的大型食谱数据库,其中包含230万份食谱及其营养成分。

特点:为什么使用APILayer的食品API?

如果你正在建立基于食品和营养的应用程序,那么你希望为你的用户提供最准确的营养信息。APILayer Food APIs可以做到这一点,因为它具有以下特点。

自然语言处理

APILayer食品API使用自然语言处理。这意味着你的用户不需要使用特殊的词汇或专业术语来获得他们想要的营养信息。

全面的营养分析

无论你的用户是想要单一食品或配料的营养信息,还是想要完整的食谱,APILayer Food APIs都能提供完整的营养分析,包括饮食、过敏和健康标签。

巨大的Edam食品数据库

Edam公司的食品数据库包括900,000种基本食品、餐馆用品和消费者包装食品。无论您的用户搜索什么食品,都很有可能在Edam的数据库中找到它们的营养信息。

巨大的食谱清单

您的用户可以搜索230万份食谱,并根据饮食、卡路里和其他健康过滤器--包括2型糖尿病、肾病等慢性病,过滤结果。

准确的营养数据

Edam公司努力为世界提供最准确的营养信息。

高度的可扩展性

食品API运行在APILayer的云基础设施上,它可以满足你最小和最大的需求(以及其他人的需求)。

无与伦比的速度

由于APILayer闪电般的基础设施,你的用户将在一眨眼间得到他们的结果。

接近100%的正常运行时间

虽然没有什么是100%的,但APILayer的服务的正常运行时间是最接近的。

它是如何工作的

开始使用APILayer食品API是快速而简单的。首先,你需要创建一个APILayer账户。你不需要多个账户来使用多个API。一个账户可以让你访问所有的APILayer API,但你需要一个应用ID和认证密钥来成功地提出请求:

APILayer dashboard

要创建一个应用程序,请访问你的帐户的仪表板,并点击应用程序标签。在那里,你可以创建一个应用程序,并选择该应用程序将访问的API:

create application in APILayer

在你创建你的应用程序后,你可以查看它的细节,以检索应用程序ID和认证密钥:

retrieve the application ID and authentication keys.

快速教程

APILayer允许你从任何可行的HTTP客户端发出请求,包括在浏览器中运行的JavaScript。在本教程中,我们将使用vanilla JavaScript和Fetch API来请求营养分析API的数据。

你可以使用营养分析API来请求单个成分或整个食谱的数据。在本教程中,我们将对单一成分进行请求。为此,我们需要向https://api.edamam.com/api/nutrition-data 发出一个 GET 请求,并提供以下查询参数:

  • app_id: 我们的应用程序的ID
  • app_key:我们的应用程序的认证密钥
  • ingr:要查询的原料

Fetch API使得发送带有查询参数的GET请求变得很容易。首先,像这样创建一个新的URLSearchParams 对象:

let params = new URLSearchParams({ 
  app_id: 'your app id', 
  app_key: 'your app key', 
  ingr: '1 cup of sugar' 
});

这段代码用必要的查询参数和它们的值初始化了一个URLSearchParam 对象。接下来,调用fetch() ,将URL和params ,如下图所示:

fetch(`https://api.edamam.com/api/nutrition-data?${params}`)
    .then(response => response.json())
    .then(console.log); 

API响应的是JSON。所以我们需要用response.json() ,把它解析成一个对象,然后我们可以对得到的对象做任何事情。在上面的代码中,我们只是把对象写到控制台。下面的屏幕截图显示了结果:

results from writing the object to the console

正如你所看到的,营养分析API提供了大量关于该成分的营养信息。

结论

如果你正在建立基于食品和营养的应用程序,并且你需要一个准确的营养信息来源,那么你需要APILayer食品API。无论你选择哪种API或订阅计划,你的用户都可以从其自然语言处理和准确的健康、饮食和过敏信息中受益。它很容易使用,也很容易上手。因此,今天就到APILayer市场去创建一个账户吧!