2022-04-15 16:19:16 来源:PHP中文网
术语API是首字母缩略词,它代表“Application Programming Interface”,中文表示“应用程序编程接口”。
应用程序接口
想象一下像餐馆菜单中的API。菜单提供您可以订购的菜肴列表,以及每道菜的描述。当您指定所需的菜单项时,餐厅的厨房可以完成工作并为您提供一些成品菜肴。你不确切知道餐厅如何准备食物,你真的不需要。
类似地,API列出了开发人员可以使用的一系列操作,以及他们所做的事情的描述。开发人员不一定需要知道如何构建操作系统并显示“另存为”对话框。他们只需要知道它可以在他们的应用程序中使用。
这不是一个完美的比喻,因为开发人员可能必须提供他们自己的数据到API来获得结果,所以也许它更像是一个高档餐厅,你可以提供厨房将使用的一些自己的成分。
但它的准确性非常准确。API允许开发人员通过利用平台的实现来完成细节工作,从而节省时间。这有助于减少开发人员需要创建的代码量,还有助于在同一平台的应用程序之间创建更高的一致性。API可以控制对硬件和软件资源的访问。
API使开发人员的生活更轻松
假设您想为iPhone开发应用程序。Apple的iOS操作系统提供了大量的API - 正如其他操作系统所做的那样 - 让您更轻松。
例如,如果要嵌入Web浏览器以显示一个或多个网页,则无需为您的应用程序从头开始编写自己的Web浏览器。您可以使用WKWebView API在应用程序中嵌入WebKit(Safari)浏览器对象。
如果您想从iPhone的相机中捕捉照片或视频,则无需编写自己的相机界面。您可以使用相机API在您的应用中嵌入iPhone的内置相机。如果不存在API以使这一点变得简单,那么应用程序开发人员必须创建自己的相机软件并解释相机硬件的输入。但Apple的操作系统开发人员已经完成了所有这些艰苦的工作,因此开发人员可以使用相机API嵌入相机,然后继续构建他们的应用程序。而且,当Apple改进相机API时,所有依赖它的应用程序都会自动利用这一改进。
这适用于每个平台。例如,您想在Windows上创建一个对话框吗?有一个API。想在Android上支持指纹认证吗?还有一个API,所以你不必测试每个不同的Android制造商的指纹传感器。开发人员不必一遍又一遍地重新发明轮子。
API控制对资源的访问
API还用于控制对应用程序未必具有使用权限的硬件设备和软件功能的访问。这就是API经常在安全性方面发挥重要作用的原因。
例如,如果您访问过某个网站并在浏览器中看到该网站要求查看您的确切位置的消息,则该网站会尝试在您的网络浏览器中使用地理定位API。Web浏览器公开这样的API,使Web开发人员可以轻松访问您的位置 - 他们可以询问“您在哪里?”,浏览器可以轻松访问GPS或附近的Wi-Fi网络以查找您的物理位置。
但是,浏览器还会通过API公开此信息,因为它可以控制对它的访问。当网站想要访问您的确切物理位置时,他们可以通过位置API获取它的唯一方法。并且,当网站尝试使用它时,您 - 用户 - 可以选择允许或拒绝此请求。访问GPS传感器等硬件资源的唯一方法是通过API,因此浏览器可以控制对硬件的访问并限制应用程序可以执行的操作。
同样的原则也用于现代移动操作系统,如iOS和Android,其中移动应用程序具有可以通过控制对API的访问来实施的权限。例如,如果开发人员尝试通过相机API访问相机,则可以拒绝权限请求,并且应用无法访问设备的相机。
使用权限的文件系统(如在Windows,Mac和Linux上一样)具有文件系统API强制执行的权限。典型应用程序无法直接访问原始物理硬盘。相反,应用程序必须通过API访问文件。
API用于服务之间的通信
API也用于各种其他原因。例如,如果您曾在网站上看过嵌入的Google地图对象,则该网站会使用Google Maps API嵌入该地图。Google向这些Web开发人员公开了这样的API,然后他们可以使用API在他们的网站上填充复杂的对象。如果这样的API不存在,开发人员可能必须创建自己的地图并提供他们自己的地图数据,只是为了在网站上放置一个小的交互式地图。
而且,由于它是一个API,谷歌可以控制在第三方网站上访问谷歌地图,确保他们以一致的方式使用它,而不是试图嵌入一个显示谷歌地图网站的框架。
这适用于许多不同的在线服务。有一些API可用于从Google翻译中请求文本翻译,或在网站上嵌入来自Twitter的Facebook评论或推文。
该OAuth的标准还定义了一些API,允许您登录到网站与其他服务,例如,使用您的Facebook,谷歌,或Twitter帐户登录到一个新的网站,而不只是该网站创建一个新的用户帐户。API是标准合同,用于定义开发人员如何与服务进行通信,以及开发人员应该收到的输出类型。
除非您是开发人员,否则您不需要知道API是什么。但是,如果您看到软件平台或服务为各种硬件或服务添加了新API,那么开发人员应该更容易利用这些功能。
标签: api详细介绍
要解决的问题Dell笔记本电脑在键盘的左下方有Fn键,我们以F5键的刷新功能为例。在默认设置下,要使用键盘上方的功能键时,如F5刷新,需要按Fn+F
故障表现:word突然不能正常启动,并有提示框:(遇到问题需要关闭,并提示尝试恢复。)但恢复后立即出现提示:(WORD上次启动时失败,以安全模
steam未响应怎么办?steam未响应刚才兴冲冲弄好游戏,点开始,和部分玩家一样没响应,在网上搜了搜解决办法,3DM那边有用替换法的,觉得太麻
小编带来了maxdos 9 3使用教程,很多朋友不知道maxdos工具箱9 3怎么用,下文将会介绍maxdos工具箱9 3的功能以及相应的使用方法,有需要的
腾迅QQ的端口是什么?计算机端口是英文port的意译,可以认为是计算机与外界通讯交流的出口。腾讯的端口就是相对于一个接口,而连接的计算机
要解决的问题Dell笔记本电脑在键盘的左下方有Fn键,我们以F5键的刷新功能为例。在默认设置下,要使用键盘上方的功能键时,如F5刷新,需要按Fn+F
故障表现:word突然不能正常启动,并有提示框:(遇到问题需要关闭,并提示尝试恢复。)但恢复后立即出现提示:(WORD上次启动时失败,以安全模
steam未响应怎么办?steam未响应刚才兴冲冲弄好游戏,点开始,和部分玩家一样没响应,在网上搜了搜解决办法,3DM那边有用替换法的,觉得太麻
小编带来了maxdos 9 3使用教程,很多朋友不知道maxdos工具箱9 3怎么用,下文将会介绍maxdos工具箱9 3的功能以及相应的使用方法,有需要的
腾迅QQ的端口是什么?计算机端口是英文port的意译,可以认为是计算机与外界通讯交流的出口。腾讯的端口就是相对于一个接口,而连接的计算机
如果只有一个网络可以用,而却有两个有线路由器,那么怎么将其连接起来呢?本文的方法适合于路由器本身没有WDS或者两个路由器不是同一型号,
360安全卫士是一款功能强大的电脑管理软件,有些用户出于安全考虑,想知道如何开启软件反勒索服务,接下来小编就给大家介绍一下具体的操作
WCDMA 是英文Wideband Code Division Multiple Access(宽带码分多址)的英文简称,是一种第三代无线通讯技术。W-CDMAWideband CDMA
QQ是现在最常用的社交、办公软件之一,有些用户遇到了电脑QQ无法传输文件问题,不知道如何解决,接下来小编就给大家介绍一下具体的操作步骤
旗袍,中国和世界华人女性的传统服装,被誉为中国国粹和女性国服。虽然其定义和产生的时间至今还存有诸多争议,但它仍然是中国悠久服饰文化
7月21日,北京市政府发布《北京市电影局关于在疫情防控常态化条件下有序推进电影院恢复开放的通知》,宣布全市低风险地区影院,可于7月24日
武汉7·16渡江节组委会14日发布公告,由于长江武汉关水位超警戒水位,按照规定取消2020年第46届武汉7·16渡江节。受近期持续强降雨影响,
过去一段时间,国家级非遗项目灰塑传承人邵成村,多次在陈家祠等工作现场,向身边那些带着好奇目光的人们讲解灰塑的种种技术细节:草根灰、
7月13日,位于璧山区南门唐城夜市街区的璧山冷酒夜市开街。这是璧山区打造夜间经济消费载体、培育夜间经济活动品牌的举措之一。璧山市民一