API安全(一):什么是API

API即应用程序编程接口,是“Application Programming Interface”的缩写。那API到底是什么呢?先看看百度百科的解释:

API是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。

从这段描述我们可以了解到,API本质上是一种接口,这些接口可以表现成函数、协议、数据结构等。那为啥要设计API呢?是因为可以将某硬件或软件的能力通过API提供给外部,这样开发人员或应用程序就可以直接通过API来调用这种能力,而不需要再理解硬件或软件内部的工作机制和访问源码了。

这么说可能还是有些抽象,举个例子:在C语言中,我们通过fopen()函数打开一个文件,我们使用的时候感觉非常简单。看似简单,但操作系统却要做很多工作才能实现,首先要扫描硬盘,找到文件的位置,然后从文件中读取一部分数据,将数据放进I/O缓冲区,放进内存;这些数据都是0、1序列,还要对照ASCII表或Unicode表”翻译“成字符,再在显示器上显示出来。这个过程如果让使用者来完成,那简直是噩梦!所以操作系统想了一个好办法,它预先把这些复杂的操作写在一个函数里面,编译成一个组件(一般是动态链接库),随操作系统一起发布,并配上说明文档,使用者只需要简单地调用这些函数就可以完成复杂的工作。在这里这些封装好的函数就叫做API。

再举一些生活中的例子,假如你要在电脑上访问手机上的一些内容,就可以通过一根数据线将电脑和手机连接起来然后再访问,电脑和手机上连数据线的接口就是API。再比如我们家里的插座也相当于一种API,家用电器可以通过它接入电源。


在API的发展历程中,根据其表现形式的不同,可以大致分为以下4种类型:

  1. 类库型API:它的使用依赖于特定的编程语言,开发者或应用程序通过类库型API调用某个类库。例如应用程序调用微软基础类库MFC:

  2. 操作系统型API:指操作系统对外部提供的接口,通过这些接口可以控制操作系统的外观和行为,调用相关类库等,如Windows API和Linux API等。

  3. 远程应用API:这类API表现形式是标准协议,通过这些API可以不用关心涉及的编程语言或开发平台,直接将不同的技术结合起来,访问远程资源。如java通过JDBC连接操作不同数据库:

  4. Web应用型API:通过Web开发过程中的架构设计,以一组服务的形式对外提供调用接口,以实现不同应用程序之间、不同服务之间的访问。如微博的用户登录:


讲到这里,我想你对API一定有了初步的了解,下节将继续对“API安全”这个系列进行讲解。 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值