前言
我们经常听到开发一句话“你给我一个接口让我调用一下呗”,老板问能不能用自己的程序获取一些数据,开发往往也说"可以呀,让对方给一个接口和应用的权限,让我们调用就行了"
这里所说的接口到底是什么呢?
什么是接口API
上面开发所说的接口并不是我们编程的接口Interface,这里的接口我们往往把它叫做API(Application Programming Interface,应用程序编程接口)
引用百度百科api的解释如下:
看了一点懵这么官方,好像懂了,好像不懂,似懂非懂。
接口一般分2大类:
1. 非web的应用程序方面,一般是系统方面或CS模式的应用,叫一般叫系统API。你加入相关别人指定的“文件”,往往是链接库或SDK,你就可以使用这个库所提供的类、函数或方法去“操作”对方
2. web方面的,叫web API。一般就给我一个URL和一串授权的数字(我们给它起个名字叫token,令牌),你有了这个URL和一串授权数字,你就可以按别人公司的API文档使用别人指定的方法及参数之类了。
例子:dnspod API就是一个例子,地址为:https://www.dnspod.cn/docs/index.html
它就是使用POST应用对dnspod的页面操作的,返回的是json格式的数据。它可以使用linux的curl命令,-X POST指定是POST方式提交。为什么要使用 POST,因为它有授权的tonken令牌,不能明码,被你看到,不安全呀。
说了一大堆,简单来说API就是别人给你一个“文件”或要带上“授权字符串”URL地址,这样你就可以实现对其系统进行操作。
为什么要有API接口
有一个需求
我们网站客户有PC电脑端、手机移动端(安卓和ios)、大屏的pad、超大屏的墙上电视
按普通的用写,你起码得写3套网站吧,一套是PC端的,一套是安卓移动端的、一套是IOS,还得开发3套东西,维护3个网站,会不会疯了?!
那我能不能有一种方法,我只给一个地址给,然后根据客户端的浏览器判断是PC、安卓、还是IOS,再返回对应的数据即可。并不固定客户用的是PC、安卓、还是IOS...是不是很熟悉,是前后端分离吧,我们把这种后端起一个技术用语叫web API,如果这个API符合RESTful API理论的
网友评论