关于API的一些问题(一)
笔者最近在看阿里关于API的教学视频,所以就做点笔记。
- 首先,API是什么,我们这里的API是指计算机上的,可不是别的地方的。API(Application Programming Interface,应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。 目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。API可以只是一个明确定义的接口,可以为其他软件提供特定的服务,它既可以小到很小,即只包含一个特定的函数,也可以很大,大到包含数以百计的全局函数、方法常量等等。API的实现既可以共有,也可以私有。
- API的分类:
在当今这个社会,人们为什么要使用API,原因有三点:1、快速扩展功能。2、提高开发效率。3、降低模块之间的耦合度。
在关于API的分类中,主要讲关于Web API:
而关于HTTP请求包含的内容,这个在网上都可以查到,笔者在这里就不多说了
API的请求方式,所谓的请求方式就是告诉服务器客户端希望它采取什么样的动作。常见的请求方式有四种,以下列出:
因为笔者说的是关于HTTP的请求机制,这就需要说一下以HTTP协议的请求头与请求主体:
请求头:提供了请求的元信息,是一个简单的项目列表,其中客户端发送请求的时间和请求主体大小、身份认证等信息。
请求主体:包含了客户端希望发给服务器的数据。
举个例子,当我们访问网页时,就是在调用API,当我们成功调用API后,除了返回给我们所需要的信息,还会包含一个状态码,处理成功返回2XX;
当我们未能成功调用API时,则会返回错误码,服务器端错误码是5XX,表示服务不可用。
而我们在平常所遇到网页出现的403错误,其实也是一种API调用错误。