应用程序编程接口(API)是构建智能应用程序的终极捷径之一。它是两个应用程序之间的通信通道。不管是有意还是无意,你在日常生活中浏览互联网或使用程序时,有时会用到API。
尽管API通常会发送复杂的数据作为响应,但是您如何理解和使用这些信息来服务您的用户呢?api使经验丰富的开发人员和新开发人员的生活变得轻松。所以你需要知道如何在你的应用程序中使用它们。
在这里,通过一些用例和示例,我们来看看作为开发人员如何使用API为您的程序提供服务。
开发人员将api创建为可以服务于其他开发人员的产品。其目的是使复杂的web开发过程变得简单、高效,并且对于消费者开发人员或企业来说更快。
现在大多数企业都依赖第三方api来解决问题,更好地为****。然而,使用api并不像很多人想象的那么复杂。您可以将其视为第三方解决方案,当您发出特定的HTTP请求时,它以数据的形式为您提供特定的响应。
使用API就像在比萨餐厅下订单一样。你不能进厨房告诉他们你想要什么。你需要一个服务员来拿你的菜,在你的比萨饼回来之前把它传达给厨房。
您可以将API视为您和厨房之间的链接。在本例中,您是一个光顾餐厅的客户,提供一个服务员(API)。然后服务员回答你选择的比萨饼(数据)。在真正的API中,web应用程序是通过发出端点HTTP请求,请求通过其API使用提供者内容的客户端。
连接到API需要将程序**API端点。您可以将其视为双向连接。连接到您的程序的端点发送一个请求,而连接到API的端点则向您反馈一个特定的响应。
端点是一个URL,它请求并允许客户端直接访问API的资源。
除了使用API获取数据外,还可以将提供者的请求发布到客户端,使用PUT方法从提供者获取更多信息,以及使用DELETE方法从程序中删除现有数据。这些方法中的每一种通常都可以在API的文档中找到。
将API与程序集成不仅仅是一个自发的决定,它是预先考虑的。你必须知道你想要什么样的信息以及你想要多少信息。这降低了复杂性,特别是在处理作为多维数组的JSON数据时。这种做法也可以让你得到具体的信息,你需要为您的程序。
有上百个api,它们有不同的连接规则。虽然有些api是免费的、开源的,但其他api只能在订阅的基础**问。
尽管有些API是无缝和直接的,并且不需要任何先决条件,但是其他API可能要求您在连接到它们的端点之前满足一些条件,比如生成API密钥或注册开发人员的帐户。
相关:使用Aviati***tack API将飞行数据集成到项目中
然而,任何API最重要的方面之一就是它的文档。最佳实践是阅读并遵循您打算连接的任何API的文档,以获取有关如何编写代码和使用其资源的指南。这是因为每个API都有自己的连接方法和指令。
要连接任何API,还需要了解它支持的编程语言。
连接到API没有具体的方法,但是有几个示例可以让您了解如何使用应用程序使用API数据的基本概念。但在我们进一步讨论之前,我们已经写了几篇关于api的文章,以及如何利用它们。
例如,我们有一篇关于如何连接Weatherstack API的详细文章,它使您能够访问实时天气数据。我们还介绍了如何使用Mediastack API,这是一种付费API,可用于向网站添加新闻标题。
让我们看几个简单的代码示例,说明如何连接到API。
Iro.js公司是一个简单的API,允许您添加一个免费的颜色选择器到您的网站。在色轮上选择颜色点时,API将返回该颜色的十六进制或RGB代码。连接到iro.js公司API,您所需要做的就是将其内容交付网络(CDN)端点粘贴到DOM的head部分。
此API的完整文档可在iro.js.org. 让我们看看如何使用下面的示例代码段连接到此API:
<!DOCTYPE html><html><head><title>Practice Slider</title><script src="https://cdn.jsdelivr.net/npm/@jaames/iro@5"></script></head><body> <button id="color-button" onclick="sample()">Display color picker</button><div id="color-circle"> </div><div id="color-code"> </div></body><script>let colors= document.getElementById('color-code'); c***t sample= ()=>{ var colorPicker = new iro.ColorPicker('#color-circle', { // Set the size of the color picker width: 320, // Set the initial color to pure red color:"#ff0000" }); colorPicker.on(['color:change', 'color:init'], function(color) { // log the current color as a HEX string colors.innerHTML=color.hexString; });};</script></html>在上面的示例API中,您不需要API键来连接它。但是,为了更好地理解它,请仔细查看JavaScript。为了连接这个API,我们只需要从iro类调用ColorPicker函数,然后我们将色轮容器的id传递到类中。
的端点iro.js公司API很容易连接,因为它的开发人员为用户编写了额外的类代码。下图是上面示例代码的结果。
要查看颜色更改事件是如何发生的,可以打开另一个HTML文件并将以下代码粘贴到其脚本部分:
var colorPicker = new iro.ColorPicker('#color-pick', { // Set the size of the color picker width: 400, // Set the initial color to pure red color:"#ff0000" });c***t myColor =(color)=>{c***ole.log(color.hexString);};colorPicker.on("color:change", myColor);每次更改控制盘上颜色选择器的位置时,上述代码都会记录十六进制颜色值。
相关:用Marketstack API招待您的站点访问者
注意:所有示例代码都是遵循API文档中的说明的结果。
NoCodeAPI提供了许多API,包括货币转换器API。要连接到其货币交换端点,请转到NoCodeAPI市场并创建一个帐户。
登录后,页面上部会有一个搜索栏。在该搜索栏中,键入currency exchange,查询出现后,单击Activate。
在下一页中,单击makecurrenceexchangeapi。接下来,输入API的首选名称并单击Create。
创建API后,单击查看文档。接下来,选择一种首选语言来查看连接到API端点的代码。然后,您可以复制该示例代码并将其粘贴到应用程序中以进行进一步定制。
请看下面的货币转换示例代码:
<!DOCTYPE html><html><head><title>Currency converter</title></head><div id="currency"> </div></body><script>let currency= document.getElementById('currency');async function callingFn() { try { c***t resp***e = await fetch("https://v1.nocodeapi.com/techyprem/cx/FHNXhKRkWDCvMehl/rates/convert?amount=10&from=USD&to=Eur", { method: "get", headers: { "Content-Type": "application/json" } }); c***t json = await resp***e.json(); currency.innerHTML="Success:" + JSON.stringify(json); } catch (error) { c***ole.error("Error:", error); }}callingFn();<script></html>上面的代码只是文档中代码的修改版本。但是,请密切注意JavaScript响应变量中的转换参数。
原始JSON输出如下:
Success:{"query":{"from":"USD","to":"EUR","amount":10},"info":{"time":1604587505388,"rate":0.844865},"result":8.44865,"text":"10 USD = 8.44865 EUR"}为应用程序使用API可以让您更快地完成项目。尽管有些API文档可能是技术性的,但对于新手来说,有许多API文档是有用的。
但是,正如我们前面所说的,要充分利用您想要从中获取数据的任何API,您必须仔细研究其文档并遵守连接到它的规则。
尽管我们在这里的示例中使用了JavaScript,但根据API的类型,大多数示例仍然支持其他编程语言。您可以从任何API的文档中获得有关语言支持的信息。另外,请注意,我们在这里使用的示例只是许多api用例中的一小部分。
...eKit和SceneKit的集成,开发者应该可以很容易地更新他们的应用程序。但这将如何影响未来的应用程序呢? ...
...用也在不断增加。这些产品可以让你远远超出开发人员的应用程序和服务的能力。这让你有机会让你的家功能和创意,你可以想象! ...
...上。我们知道我们在找什么,而且,一般来说,我们知道如何找到它。弄清楚别人是如何在网上搜索的难度要大得多,尤其是现在的网站非常关注搜索引擎排名。 ...
...尤其是在新闻和体育网站上。这样的细节也会出现在移动应用程序甚至主屏幕上。 ...
如果你使用googlesheets或googledocs之类的Google应用程序,googlescript允许你完成类似桌面应用程序无法完成的事情。 ...
... 时区在处理处理处理时间的web应用程序(如日历应用程序)时可能会产生问题。让ipapi为您检测和调整时区,省去了麻烦。 ...
... 如果你想知道我是如何让我的LED去接地引脚只使用这些微小的电缆位,我们的快速实验板速成课程应该有助于清理它!检查设置并通过USB将NodeMCU连接到计算机。 ...
...自己寻找和撰写新闻——也可以依靠mediastack API在网站或应用程序上直接向读者提供新闻。 ...