专栏首页APIAPI是什么意思,不懂技术看不懂?

API是什么意思,不懂技术看不懂?

API是什么意思,不懂技术看不懂?

什么是API?(应用程序编程接口)

API是应用程序编程接口的缩写,它是一个软件中介,可以实现两个应用程序间的相互对话。当你使用类似微博或腾讯QQ发送即时信息或在手机上查看天气时,API都起到了重要作用。

API的示例有哪些?

当你在手机上启动应用程序时,该应用程序会连接到因特网并向服务器发送数据。然后,服务器检索这些数据,对其进行解释,执行必要的操作后将其发送回您的手机。再后来,应用程序会解释这些数据,并向您呈现出可读信息。所有这些都是有API的参与。

我们举一个大家都熟悉的例子来进一步解释API。

想象这样一个场景,当你来到一家餐馆,拿起菜单进行点餐时,首先看到的是菜单上罗列的众多菜品信息,厨房将是你点餐“系统”的一部分,但其中的关键环节是如何将点菜的信息传达至厨房,并将食物送到餐桌上,这个时候服务员就起到作用了,服务员就是一个信使(API),他接收你的点菜信息,并告诉厨房(系统)该做什么,在这种情况下,服务员以“食物”作为信息反馈。

为了进一步加深大家对API的理解,我们再举一个实际生活中的例子。你可能对在线搜索航班的过程很熟悉。就像在餐馆点餐一样,这其中也有很多种选择,包括往返城市,往返航班时间等。假设你正在预订航空公司网站上的航班,你可以选择往返出发的城市和时间、客舱等级以及其他服务。为了准确预订航班,你可以预览查询航空公司网站,访问他们的数据库,看一看在你出发的时间是否有空位,以及机票费用信息。

不过,如果你不想在航空公司的网站上查询信息,还有没有其他可以直接访问航空信息的渠道呢?携程、去哪儿等在线旅游服务平台就是获取航班信息的另一种渠道,因为这些平台整合了来自多个航空公司数据库的信息。

在这个例子中,在线旅游服务平台与航空公司网站的API是相联系的。API就是一个接口,与餐馆服务员的作用一样。另外,在线旅游服务平台可以要求从航空公司网站的数据库中调取航班信息,以便用户预订座位、行李选项等。API在获取航空公司网站对用户请求的反馈之后,就会将相关信息发送回在线旅游服务平台,最终在线旅游服务平台上显示的信息就是用户所需要的最新航班信息。

什么是API的入参和出参?

我们再举另外一个例子——在线订购外卖。首先我们需要在应用程序(APP、小程序等)内告诉店家我想吃什么(我们所做的每一项选择就是一个个的API入参),店家也会告诉我们需要花费多少钱、大约要等多久(API返回系统计算的出参),最后我们才能得到想要的外卖。

关于API的安全性

我们在使用手机的时候,手机内的数据(比如你的通讯录)在没有授权的情况下,是不会暴露给手机应用的服务器。同样道理,服务器也不会在未经你的许可的情况下将数据提供给你的手机。这类安全机制都是在程序开发初期就人为预设好的,可不幸的是,我们也听说过一些窃取用户隐私信息的应用程序。希望随着人们对个人信息安全保护意识的加强以及网络安全法的不断完善,将来能实现真正意义上的用户授权体系,而不是默认(不反对)即同意。

原文链接:https://www.baishudata.com/news/content/2019-07-15.html

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 开发神器:帮你快速找到免费开放的 API 接口!

    此前一直有水友私信留言,说他在学习编程一段时间后,对所学语言的基础语法知识已基本掌握,想尝试着动手做一些小项目,希望通过实战来训练并提升自己的编程技能。

    GitHubDaily
  • Spring Boot从零入门6_Swagger2生成生产环境中REST API文档

    在如今前后端分离开发的模式下,前端调用后端提供的API去实现数据的展示或者相关的数据操作,保证及时更新和完整的REST API文档将会大大地提高两边的工作效率,...

    别打名名
  • Web上十大重量级API家族

    Web上的API太多啦,这里主要指主流浏览器chromium引擎提供的庞大标准库,其中JavaScript标准树的叶子属性或函数的数量就有大几千。这么大规模的a...

    Jean
  • 如何使用Web Share API[每日前端夜话0x84]

    Web Share API 自从它首次在Android 版 Chrome 61中推出以来,似乎已经不再受到关注。从本质上讲,它提供了一种方法,可以直接从网站或 ...

    疯狂的技术宅
  • 正确甄别API、REST API、RESTful API和Web Service之间的异同

    看到API你会想起什么?是接口、第三方调用、还是API文档?初看你可能会觉得这太熟悉了,这不是系统开发日常系列吗?但你仔细想一想,你会发现API的概念在你脑海里...

    IT大咖说
  • Web API 和 API 的区别

    API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件...

    梨涡浅笑
  • 初识--Web APIs

    API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件...

    清出于兰
  • 为你的机器学习模型创建API服务

    当调包侠们训练好一个模型后,下一步要做的就是与业务开发组同学们进行代码对接,以便这些‘AI大脑’们可以顺利的被使用。然而往往要面临不同编程语言的挑战,例如很常见...

    Bo_hemian
  • ASP.NET Web API对OData的支持

    在SOA的世界中,最重要的一个概念就是契约(contract)。在云计算的世界中,有关通信的最重要的概念也是契约。XML具有强大对数据的描述能力,Atom格式和...

    张善友
  • Magicodes.SwaggerUI 已支持.NET Core 3.1

    注意:AddCustomSwaggerGen和UseCustomSwaggerUI已分别替换为“AddMagicodesSwaggerGen”、“UseMagi...

    心莱科技雪雁

扫码关注云+社区

领取腾讯云代金券