API简介
概念
API(APPlication programming Interface,应用程序编程接口)是预先预定一些函数,目前是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码或理解内部工作机制的细节。
特点
1.API是一个明确定义的接口,可以为其他软件提供特定服务
2.API可以小到只包含一个单独函数,也可以大到包含数以百计的类,方法,全局函数,数据类型,枚举函数和常量等
3.API的实现可以是私有的也可以是开源的
分类
面向对象语言的API
举例:Java API列表
库与框架的API
举例:WIndows API,Windows DirectX
API与协议
举例:LDAP应用程序接口
API与设备接口
例:PC BLOS调用接口,ASPLforSCSI设备接口
Web API
例:Google地图API,新浪微博API,阿里云API市场
为什么要使用API
1.快速拓展功能
2.避免“造轮子”,提高开发效率
3.降低模块之间的耦合度
Web API协议
Web API一般采用HTTP作为底层协议,
HTTP请求机制如下:
客户端向服务器发送一个请求
服务器给客户端一个响应,告诉客户端
是否可以完成它请求的工作
为了构造有效的请求,客户端需要包含四部分:
URL(API调用地址)
请求方式
Headers(请求头)
Body(请求主体)
请求方式告诉服务器客户端希望它采取什么动作。常见的请求方式有四种:
GET:请求服务器获取一个资源
POST:请求服务器创建一个新的资源
PUT:请求服务器编辑或更新一个已经存在的资源
DELETE:请求服务器删除一个资源
请求头(Headers)
提供请求元的信息,是一个简单的项目列表,其中有客户端发送
请求的时间和请求主体的大小,身份认证信息。
请求体(Body)
包含客户端希望发送服务器的数据
状态码 - 成功状态
状态码 - 服务端错误码
API未调试成功,则返回错误码。服务端错误码是5XX,表示服务不可用(此时建议重试或联系商品页面的API服务商)
客户端错误码为