51Testing软件测试论坛

标题: 什么是API [打印本页]

作者: 初心若雪_001    时间: 2019-3-20 16:35
标题: 什么是API
工作中,多个系统直接对接通信通常需要api来支持,api几乎无处不在。在复杂的系统中,各组件之间的通信都是通过API的,如openstack的nova-api,glance-api、kubenetes的api-server,超融合的Controller VM等。同时,很多厂商也会提供api给开发者调用,实现服务的接入,如百度地图的api,微信接口的api。

什么是API

这一类的文章有很多连接可以查,我就不多说了,说了也说不好。
下面简单说一下我的理解:
作为一个开发人员,我们使用spring boot可以很快速的开发出一个RESTful api,
对了,api也有成为RESTful风格的api,简单讲,就是api中不出现动词 如:
  1. 查询所有用户:http://www.example.com:8080/users              请求方法GET
  2. 创建一个用户:http://www.example.com:8080/users              请求方法POST
  3. 查询一个用户:http://www.example.com:8080/users/{user_id}   请求方法GET
  4. 更新一个用户:http://www.example.com:8080/users/{user_id}   请求方法PATCH/PUT
  5. 删除一个用户:http://www.example.com:8080/users/{user_id}   请求方法 DELETE
复制代码

太复杂的也不需要理解太多
使用Spring Boot 快速构建RESTful风格的api,关键要理解的是要理解七个HTTP方法:
GET: 获取
POST: 提交
PUT:全量更新 PATCH:更新部分
DELETE: 删除

SDK是一个好帮手

先看这个:什么是sdk
简单说一下我的理解:
调用api的过程,在开发者的角度讲,需要写代码带上验证的token,发送http/https请求,打开数据流,提交请求参数,读取返回信息,才能获取到数据,返回的数据一般为json格式,还需要解析json,等一系列复杂的操作,sdk的存在就把这些都给做了,只要把验证的token,请求参数,地址给它,它就给返回你要的信息,甚至还帮你封装到model,直接使用就可以了,非常方便。

API和SDK的关系
api是服务端提供的服务,sdk就是调用服务的软件开发工具。api调用简单,sdk方便快捷。但是在没有sdk的情况下,自己去封装sdk的话往往需要一些工作量,开发者可以根据需要自行选择合适的方式去使用。







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2