阿里云api课程学习笔记
API简介
API的概念
应用程序编程接口:是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码或理解内部工作机制的细节。
API的特点
· 是一个明确定义的接口,可以为其他软件提供特定服务
· 可以小到只包含一个单独的函数,也可以大到包含数以百计的类、方法、全局函数、数据类型、枚举类型和常量等
· 实现可以是私有的,也可以是开源的
API的分类
面向对象语言的API:Java API列表
库与框架的API:Windows API、Windows DirectX
API与协议:LDAP应用程序接口
API与设备接口:PC BIOS调用接口
Web API:谷歌地图API
为什么使用
快速扩展功能
避免造*,提高开发效率
降低模块之间的耦合度
API请求与认证
web api协议与http请求
web api一般采用http作为底层协议,http请求机制如下:
· 客户端向服务器发送一个请求
· 服务端给客户端一个响应,告诉客户端是否可以完成它请求的工作
好处是客户端和服务端的语言可以完全没关系。
http请求包含的内容
为了构造有效的请求,客户端需要包含四个部分:
· url(api调用地址)
· 请求方式
· Header(请求头)
· Body(请求主体)
图示如下:
api请求方式
api请求方式
作用是告诉服务器客户端希望它采取什么动作,常见请求方式:
GET: 请求服务器获取一个资源
POST: 请求服务器创建一个新的资源
PUT: 请求服务器编辑或更新一个已存在的资源
DELETE:请求服务器删除一个资源
请求头与请求主题
请求头:提供了请求的元信息,是一个简单的项目列表,其中有客户端发送请求的时间和请求主体大小、身份认证等信息。
请求体:包含了客户端希望发送给服务器的数据。
状态返回码
成功调用后,除了返回数据还有一个状态码,状态码表示什么参考自己调用的api
api数据格式
json格式和xml格式,目前大多是json数据格式。
json表示对象是对象的键值对
json表示数据使用方括号
api身份认证以及签名认证
appcode和(appkey&appsecret)需要哪种看具体调用的api