API接口设计的4个要点 api接口设计怎么做

api接口设计怎么做(API接口设计的4个要点) , 小编带你了解更多信息 。

原则上API接口设计一般出现在开发的详细设计中 , 但是随着诸多公司建立开放平台 , 产品经理也逐渐需要能理解API接口 , 尤其是做平台性的产品 , 还要学会定义接口 。本文就关于产品经理在设计接口中需要定义什么、需要注意什么来展开陈述 。

API接口设计的4个要点 api接口设计怎么做

文章插图
看到人人都是产品经理社区已经有关于API接口的相关介绍 , 因此本文就不做过多的关于API接口概念方面的介绍 。
一、了解API的常识在做接口设计时 , 如果是新手 , 建议多参考并了解不同开放平台的接口样式 , 比如百度、旷视、腾讯等 , 从中可以发现一些共识;
1. 常用的通信协议调用第三方平台接口需要进行系统间的通信 , 目前常用的协议是http和https;简单理解https是http的加密版 , 可以将用户到服务端请求的信息进行加密 , 避免因明文传输被截获而获知用户信息 。
基于http协议的接口具有轻量级、跨平台、和跨语言的特点 , 为了适应不同的开发者 , 目前各个第三方平台都会提供基于各种常用语言的接口形式 , 因此大多采用http或https协议;举例 , 百度、科大讯飞:
  • 科大讯飞的物体识别请求URL:http://tupapi.xfyun.cn/v1/currency
  • 百度的菜品识别请求URL: https://aip.baidubce.com/rest/2.0/image-classify/v2/dish
笔者查阅了百度、腾讯、旷视、阿里的云平台发现在视觉方面均都采用的是https协议;对于视觉 , 图片数据本身包含的信息就很丰富 , 尤其是人脸 , 因此采用https还是有利于保护用户隐私信息的 。
2. 接口的请求方式了解接口的请求方式有助于了解用户端和服务端间的交互方式 , 基于http协议的常用请求方式是post和get;两者的主要区别如下:
(1)直观区别:get请求方式是将请求参数放到url中 , post是将参数放到requst body中 , 所带来的的直接影响是get的请求参数存在长度限制 , post无限制;其次是get将参数放到url中安全性弱于post;
(2)深度区别:get请求方式用户端和服务端只产生一次交互 , post请求方式用户端会和服务端产生两次交互 , 举例:快递小哥是用户端 , 你是服务端 , 则get就像常来你们小区和你认识的快递员直接将快件送到你家 , 你跟他说声谢谢;post就像新来的快递员先打个电话问下你在家吗?你告诉他你在家呢 , 过了5分钟他将快递送到你家了 , 你跟他说声谢谢;
目前百度、腾讯、旷视的图像识别接口均采用的是post请求方式
3. 接口响应机制最后了解接口的响应机制:同步接口和异步接口;简单理解同步接口即实时返回消息给调用方 , 异步接口就是可以延迟返回消息给调用方;实时性要求高的且只能线性工作的需要采用同步接口 , 其他可以优先使用异步接口;当然不同的场景 , 同样的服务接口会被要求同步或异步;以人脸识别中的人脸注册为例:
(1)刷脸支付:以支付宝为例 , 使用之前需要按照步骤采集人脸 , 后台会调用人脸注册将当前人脸注册进人脸库并和该支付宝账号信息绑定 , 这一步人脸注册通常是同步接口 , 因为不会要求用户在APP前等待太久 , 需要及时返回注册成功信息;
(2)客流系统:现在商超使用的客流系统一般已经采用人脸识别取代头肩模型 , 这样不仅可以统计人数还可以统计人次 , 其中对于首次识别的陌生人脸通常需要注册进陌生人脸库 , 这里的人脸注册一般为异步接口 , 因为大型商超每天数十万客流且对于陌生人无会员信息 , 所以不需要实时注册 , 只要进入队列能在当日24小时内注册完即可;
小结以上关于API的接口常识在设计接口的时候 , 开发一般都会要求产品确定接口的响应机制;其他的开发都会自己完成;但作为开放平台的产品经常会对接开发 , 多了解些常识既可以跟自己的开发有更多的共同语言沟通 , 也可以在对接用户的时候可以跟用户的开发简单解释 。