api接口是什么?产品经理,你要懂点API接口知识!
产品经理不需要深入了解每个接口的实现原理。行业毕竟有技术专长,但还是要了解在什么场景下应该使用什么样的接口,以便于方便和更好地对外提供数据服务。
刚开始做产品经理的时候,经常听到开发抱怨:“这个产品经理什么都不懂,这需要这么多接口,开发还不够,要做联调就得安排这么少的开发时间,出现任何问题我概不负责!”
每次听到这样的抱怨,我总是一头雾水——什么界面?什么联调?我又做错了什么?
我自己开发之后才开始明白:在系统层面,除了可见的页面功能外,还有很多隐藏在页面功能下的界面。
本文简要总结:我眼中的界面是什么样的?还有,为什么要学习API接口知识?
什么是接口?
API接口:应用程序编程接口(API: ),是一组定义、程序和协议,通过API接口实现计算机软件之间的相互通信。
例如,如果我开设一家银行并开设存款/取款服务。普通储户想要通过手中的支票提取存款,首先要找到对应的【地点】,即正确的银行和正确的柜台。
填写银行规定的【支票格式】,就可以用这张“支票”取钱了。
另外,柜台有限,来取款的顾客可能比较多,所以需要顾客【排号】,一个一个的有序进行取款服务出于安全和服务质量的考虑,银行柜台需要有【反馈机制】。如果客户支票填写错误或支票过期,需要告知客户返回并重新填写。
【位置】:系统发布的API地址,包括IP、端口、API名称等信息。
【校验格式】:该接口的数据传输规范,例如:SKU只支持9位字符串数据,库存只支持16位数字。启动【反馈机制】。
【号码排队】:接口的“消息队列”,消息队列的主要特点是异步处理,可以减少请求响应时间和解耦。试想,如果提款的人不【排队取号】而是冲到柜台,柜台还能正常服务吗?
【反馈机制】:接口中的返回参数,为了保证对方能够正常获取所有数据,以免在发现异常时因数据异常等原因造成数据丢失,需要告知对方如果有异常,为什么无法获取数据,对方会根据反馈做出相应的调整,或者重新发起请求,或者放弃数据。
注意:开发者口中的“联调”,简单来说就是测试两个系统的开发者之间接口调用是否成功,能否正常获取数据。由于接口联调涉及到开发者跨系统的协作,一般需要在正常开发时间之外预留一段时间供开发者进行联调。
接口有多少种类型?
以上只是一个简单的例子来说明接口的原理。事实上,接口有很多种。下面将根据不同的接口类型来谈谈各种接口的区别:
p>
1.根据响应机制可分为同步接口和异步接口:
同步接口:系统A请求系统B的接口后,必须得到系统B的接口的响应,才能进行下一步。
例如:登录时调用第三方平台接口(如微信)登录,需要跳转到微信进行验证并返回验证结果,才能登录成功。
异步接口:系统A请求系统B的接口后,无需等待源系统返回结果即可进行下一步操作。
例如:滴滴打车后,司机点击结束行程后,无需等待银行支付成功再开始下一个订单。因为此时滴滴已经验证了司机和乘客的银行账户或者支付宝账户,并且确认了双方交易的合法性,所以可以结束订单。
这时候我们看到的是我们已经支付成功了(其实银行可能还没有扣款),滴滴后台会把交易流转给银行,银行有后扣掉验证了它。支付和支付操作。
2.根据接口的触发形式可分为分发接口和订阅接口
分发接口:当A系统产生新数据时,会分发到B系统(或多个)。
例如:电商网站后台的客户管理系统,当产生新的黑名单客户时,会将数据分发到订单、推荐等各个系统,从而拦截这些客户按时订购。
订阅接口:系统B在需要时调用系统A的接口订阅数据。
例如:用户在炒股软件中查询银行账户余额时,会调用银行的余额查询接口,炒股软件本身不存储此数据。
知道界面的产品经理有什么用?
以上不同类型的接口有不同的使用场景。个人认为,产品经理不需要了解各种接口的实现原理,而是需要了解在哪些场景下应该使用什么样的接口,这样才能更好地对外提供数据服务。
在我看来,理解接口有以下好处:
明确各个系统之间的数据流转,尤其是功能系统的产品经理,只有在了解了功能设计的目的以及需要对外提供什么样的接口服务后,才能在设计中更全面地考虑需求阶段;掌握整体开发工作量,不局限于功能;另外,在安排项目规划时,可以考虑与周边系统联调的时间,规划安排会更加合理;识别项目中的关键风险点,特别是一些关键接口,需要大数据压力测试的大数据量接口,需要尽快安排联调联测,并对周边项目提出要求。
产品经理如何写接口文档?
你可以在杜娘找到很多现成的界面文档。可以参考腾讯开放平台上的API列表。以下是几个关键点:
声明接口字段并返回参数。字段需要声明是否为必填、字段类型、长度、处理规则;声明接口的预估数据量和调用频率,保证接口在开发过程中的健壮性。财产;声明了接口的异常处理方法,比如是否重传失败的数据,重传的次数等。
在之前的产品设计过程中,系统双方的产品经理在接口文档应该由谁编写的问题上存在争议。后来定了一套标准,我个人认为比较合理,供大家参考:
原则一:接口需求文档一般由数据需求方编写。
原则2:如果接口是分发接口,接口需求文档由数据提供者编写。
总结:
好了,到这里,我简单介绍一下我这些年在个人工作中接触到的API接口。由于一直是后端产品经理,所以对前端界面了解不多,也不知道差别有多大。以上内容仅供后端产品经理参考,希望大家及时纠正文中的一些错误。
另外,作为大数据产品经理,大数据如何利用接口对外提供服务?总结完自己的一套方法论,以后再分享。
郑重声明:本文版权归原作者所有,转载文章仅出于传播更多信息之目的。如果作者信息标注有误,请尽快联系我们修改或删除,谢谢。