接口原来就是个插座~

产品经理在日常的工作中会经常与技术沟通,例如在需求评审会上,开发说,你这个需求太复杂,光接口就十几个,又比如技术说联调接口,接口的响应时间等等,这些都关于接口,如果产品经理不懂接口,显然就不能跟技术愉快地沟通了。这篇文章就来讲解“接口”这个玩意儿。

生活中的“接口”


先来看看接口的定义:


API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,包括接口地址、传入参数和返回参数。API的目的是实现系统之间的相互通信


嗯,太复杂,太抽象了。


认知心理学上讲学习新事物有个技巧,将陌生的事物与大脑中熟悉的事物相联系,这样便于理解新的事物。那生活中又没类似的概念呢?


在日常生活中,两个实物之间进行连接的部分成为接口。没错,插座就是一个接口!!!手机的插座、风扇的插座、台灯的插座,都是统一标准的二插,只要找到插座,就可以充电!

所有的电器只要符合接口规范,便可以通过接口获得电。(相应地,所有系统只要符合另一个系统的接口规范,便可以通过接口获取数据)

举一个具体的例子:


小明的手机没电了,需要充电,怎么办?小明需要找到电源插座,然后通过充电器与手机相连进行充电。如下图所示:

技术说的“接口”


而技术所说的接口可以理解为:基于需求为了获得某些数据,正常状态下传入请求参数,会收到该数据范围内的返回参数。


再来看一个产品中的例子——钉钉开放平台所提供的获取员工花名册字段信息的接口(如下图所示),加深一下印象吧~

将从接口的四大组成接口地址、请求方法、请求参数、返回内容和系统讲解接口:

▌请求方式:get/post


如果把互联网比喻为信息高速公路,那么既然是高速公路,就得有交通规则对不对。不然你开拖拉机的、和开大卡车的都在一条路上飙车,很容易堵车是不是。因此信息高速公路的交通规则中,就有一条特别规定了,开拖拉机的和开卡车分别应该走什么车道。

开拖拉机的运载的货物相对比较少,也很容易看出来运载的是什么货物,因此建议走get车道,虽然路窄一点但好在过关卡的时候不用下车检查。

大卡车运载的货物比较多还比较隐蔽,因此走post车道

图1是一个get请求,他的参数是拼接在url(query string)里的。




图二是一个post请求,它的参数是在request body(请求体)中的,以键值对的形式传递参数。



▌请求地址

顾名思义就是接口的地址,以网址的形式展现,你通过发送请求给这个网址来对接口进行交互操作。


▌参数说明

即传输参数的时候要带的一些参数,一般文档中会用表格的形式清晰的说明。当我向接口发送携带请求参数的请求时,都要携带什么字段,规则是什么。如下图:

▌返回内容

返回内容一般会以json或是XML的形式返回。

(XML 和JSON是两种完全不同的数据表达方式。他们分别采用完全不同格式将原始数据转换成XML或者JOSN格式数据,再借用货车与高速公路的例子,XML或JSON是车装载的货物。

像上面贴出来的这种接口,还是比较好阅读的。如果我们发送userid_list和field_filter_list,就是员工userid列表和花名册字段列表,接口就返回给我们errcode返回码以及errmsg返回码的文本描述,提示我们是否返回成功。

假若成功便会返回如下的花名册字段信息:

接口的类型

▌同步接口

同步接口:A系统请求B系统接口之后,必须获得B系统接口的响应后才会执行下一步操作。

例如:登录操作的时候调用第三方平台接口(如微信)进行登录,需要跳转到微信进行验证并返回验证结果后,才能登录成功。

▌异步接口

异步接口:A系统请求B系统接口之后,不需要等待源系统返回结果就可以进行下一步操作。

例如:在滴滴打车之后,司机点击结束行程后,不需要等待银行付款成功之后再开始下一个订单。因为此时滴滴已经验证过司机、乘客的银行账户或者支付宝账户,确认了双方交易的合法性就可以结束订单。这时,我们看到的是我们已经付款成功(其实银行可能还没扣款),而滴滴后台会将这笔交易流水传给银行,在银行验证后再进行扣款、付款操作。

接口的性能

▌接口响应时间

从请求端发送一个请求开始,到接收到响应结果所经历的时间。

▌并发数

指同时访问服务器站点的连接数。

可以进行简单估算,如果响应时间<200ms,1s=1000ms,1000/200=5,那么1个线程,秒并发>5,如果有20个线程,那秒并发可以超过100。

响应时间越短,多线程并发数越高,接口性能越好。

不是所有的业务场景都需要“最好”的性能,满足业务场景即可。

▌进程和线程

一个程序有多个进程,一个进程有多个线程。

对于操作系统来说,一个任务就是一个进程,比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。

有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内的这些“子任务”称为线程

小结

可以发现,理解好接口,可以帮助产品经理:

1. 更加理解了各个系统之间的数据是如何流转的,在需求设计阶段考虑会更加全面、严谨。

2. 虽然不懂如何实现,但能大概估摸出开发总体工作量,在安排项目计划时能够考虑到与周边系统联调的时间,计划安排才会更加合理;

最后用一句话总结一下,数据与用户行为相联系,接口实现系统之间的数据交互,从功能的角度讲,便是功能决定接口,接口反作用于功能~


最后送上福利,关注公众号:大道产品,赠送产品经理必备文档、工具、书籍(70+)~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容