全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:15617636856

郑州网站建设

当前位置: 首页 > 188app金宝搏网 >>API与SDK:有什么区别

API与SDK:有什么区别

作者:郑州网络公司发布时间:2023-09-08 23:46:54查看次数:来源:网络文章数:

什么是API?

什么是SDK?

两者之间有何关系?


既然点进来了,相信你或多或少都听说过这两个名词了,因此,在为你解答之前,让我们先从一个例子出发。

假如你想开发一个OCR应用(通俗的说就是文字识别应用),他的功能是识别用户上传的一张图片,然后将图片中的文字识别出来返回给用户。

通常,OCR应用的后端服务都会部署在云上,那么我们应该如何在移动应用程序与基于云的服务之间进行通信呢?

这就是API和SDK的用武之地了。

API

API的特点

通信


首先我们要明白的是API是和通信有关的,是用于应用(服务)与其他应用(服务)对话所定义的协议。在上述例子中,你可以简单理解为API是OCR应用和云端服务之间沟通的桥梁。

那么API到底是什么?

API全称ApplicationProgrammingInterface,即「应用程序接口」。

一般是指一些预先定义的函数,目的是供应用程序与开发人员基于某软件或硬件得以访问一组程序的能力,而又无需访问源码,或理解内部工作机制的细节。

以Java为例,当你想要实现一个数组排序的功能时,你是会先手写一个排序算法,还是直接使用Arrays.sort函数?我想你心里是有答案的。

抽象

其次,我们要理解,API的另一个重要特点——抽象。

抽象指的又是什么?

还是以这个OCR应用为例,当我们在使用云端提供的文字识别能力时(比如百度文字识别),他的背后可能会有成千上万的代码,比如提供识别能力的机器学习的代码、提供Web能力的后端代码等等。

但是你作为一个APP的开发者,你需要去看这些代码是怎么写的吗?难道不知道背后的源码就不能调用百度提供的文字识别能力了吗?当然不是。

通常服务商已经给你提供了文档,告诉你如何去调用相应服务,只要你按照他的要求来即可。

因此,在你的APP和OCR服务之间,API抽象出所有复杂的逻辑,简化了调用过程,这使得你只需要考虑获取所需的数据即可。

标准化

API是标准化的,这意味着存在有关如何定义API的行业标准,比如SOAP、REST、GraphQL等。

API的构成要素

那么,API通常由什么组成呢?

首先,我们要发送一些数据到云端,即所谓的「请求」。

从本地应用发请求到云端,我们需要分几步完成,以REST为例。

对于RESTAPI调用请求,第一步是指定传输的方法,通常是和HTTP方法对应的。

当你想要上传一张图片时,通常会使用POST方法,然后是传递一些参数,包括请求的内容(图像本身)。然后加上需要请求的地址,即可构成一个完整的请求。

之后,服务器再以JSON等形式将数据返还给你,在你使用的云服务的文档中也会有所标注。

SDK

说了这么多,你应该对API有所了解了,那么这时候问题就来了,作为开发人员,你如何在实际的项目中调用API?

你要自己构造HTTP请求、拼接URL、添加需要的参数、处理返回的JSON对象,麻烦吗?

麻烦。

站内文章:均为188bet博彩体育app下载方式 各部门原创内容如需转载请著名本文网站链接://www.mcissock.com/new/25690.html未经允许转载要受法律责任,如需转载请联系269247937@qq.com


[API与SDK:有什么区别]

本文链接://www.mcissock.com/new/25690.html
tags:郑州网站建设郑州网站制作郑州网站设计郑州建站公司郑州网站优化郑州做网站郑州小程序开发郑州网络公司
网页是否收录:
188app金宝搏网 在线咨询

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。

  • 返回顶部
  • 15617636856
  • QQ在线
  • 微信二维码
0
Baidu
map