2

路由器地址(路由器地址192.168.1.1,实际地址192.168.0.1)

Api和SDK的关系是啥?这里的Api可不是你理解的Api文档的那个Api,通常指的是应用程序编程接口(Application Programming Interface)。我们常说的Http数据访问地址指的就是Api接口地址。而SDK通常是针对Api接口而编写的开发工具包(Software Development Kit)。

至于它俩的关系,通常是伴生的,一般先有Api再有SDK。而SDK所编写的内容其实就是访问Api的实现。SDK的编写规则是根据Api的出入规则而来,包括访问协议、数据加密协议、数据入参结构、数据出参结构等等。

通常情况下,和Api伴生的,还有Api文档,就是Api的访问、数据格式的说明书。如果仅仅是提供给公司前端调用者看的话,通常是不需要SDK的。而如果一个公司提供SDK的话,一般来讲只可能存在两种情况,第一种就是对外开放接口,供第三方调用,有SDK的话,第三方基本上只需要关心业务代码而不需要重复构建数据请求的工具。第二种情况有点类似,那就是公司内部不同项目之间存在相互访问接口的情况,如此一来公司其他同事在编写代码时同样不需要重复构建数据请求的工具。

而SDK的好处就是不需要频繁的构建接口的访问逻辑,只需要关心入参和出参以及业务逻辑即可。当Api接口发生改变时,只需要更改SDK中的代码,不需要更改业务层面代码。当然了,如果Api改动较大,大到像参数个数都改了,那么业务代码就要随之改动了!

国内很多开放平台都会提供SDK的下载,有空可以去学学人家是怎么构建数据接口的,以及一个规范的SDK应该怎么写。

通常情况下,SDK的结构应该为ApiClient、Entity实体包(Domain)、Request接口包和Response数据返回结构包。

ApiClient的作用就是封装数据结构、签名、执行请求和接收返回结构等等。而Request接口包则是Api的所有开放接口的请求结构、路由的集合。Reponse数据返回结构包则是Api返回给SDK的数据包,可以通过Response结构来结构化数据,比如把Json转换成实体。而Entity实体包则包含Request和Rsponse包里面所有的结构对象,也就是实体类。

这就是比较标准的SDK结构了,我对接过国内很多大厂的开放平台,他们几乎都遵循这个结构。当然了,也有另类的,但几乎很少!

但是,我最怕遇到另类的,一般遇到这种情况,说明他们Api接口的请求格式不固定或者返回结构不固定,所以就很难封装成一个漂亮的ApiClient。至于为什么要这样,或许只有编写Api的程序员知道吧!

#程序员# #编程# #计算机#

本文来自网络,不代表本站立场。转载请注明出处: https://tj.jiuquan.cc/a-2195008/
1
上一篇双喜电饭锅(ih电饭锅)
下一篇 iphone12尺寸(iphone12尺寸多大)

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: alzn66@foxmail.com

关注微信

微信扫一扫关注我们

返回顶部