当前位置:首页 > 行业 > 正文内容

api是什么(API类型和集成规范指南)

wwwnzt88com2年前 (2022-12-11)行业55

译者 | 陈峻

策划 | 梁策、孙淑娟

在我们的常见应用中,往往包含着大量服务于各种数据交换的API类型、以及各种常见的API架构与协议。下面,我将从集成的角度和您讨论,在准备将多个服务相互集成时,使用不同类型、架构和协议的API意味着什么?我们可以使用哪些工具,又应该注意什么呢?

API的类型和集成的复杂性通常,我们有四种常见的API类型:公共、私有、伙伴和复合。其中:

1.公共API

公共API有时也被称为开放或外部API。顾名思义,任何人都可以公开的方式,在没有限制、或限制相对较少的情况下使用它。此类API通常是方便第三方与本公司开发的Web应用进行通信的一种方式。一些常见的、为大多数中小企业提供服务的公共API有:PandaDoc、BigCommerce、DocuSign、NetSuite等。

2.如何与公共API集成

与公共API集成相对比较容易。不同的公司都会为您提供必要的API文档,其中描述了各种端点、验证与授权其API的使用和调用方法等。事实上,大多数企业的集成平台都是围绕着公共API的概念来构建的。他们提供的所谓集成连接器,本质上都是各个Web应用的API抽象层。不过,它们在工作机制上的复杂性和范围,则取决于API的设计与文档说明。

总地来说,与公共API集成相关的主要策略有两种:要么像iPaaS那样使用第三方软件;要么自行开发。在您选择后者时,请准备好为数据映射(data mapping,https://www.elastic.io/data-mapping-best-practices/)而设计的相应策略。虽然许多应用程序会使用相同的模式,来命名前端的公共字段,但这些字段在后端可能有着截然不同的标签。适当的策略应该能够保证追溯性、准确性和相对快速的项目实施保障,以及对于一些容易避免的错误予以保护。

值得一提的是,如果您正在为自己的项目寻找一些可公开访问的API,GitHub上就有一个较为详尽的公共API列表(https://github.com/public-apis/public-apis)。它涵括了诸如天气预报等Web应用所需要用到的、完整的API密钥和OAuth授权。

3.私有API

作为公共API的对立面,私有API仅适用于单个公司。企业开发人员经常使用它们来实现Web应用之间在某种程度上的数据交换、提供对企业数据库和其他内部共享服务的访问权限、以及与其他内部API通信、或为公司员工构建内部应用。

事实上,越来越多的公司都认识到了使用自己的API的价值。据此,他们可以节省更多的时间和资源,提高应用的敏捷性和灵活性,并有助于降低整体运营成本。

4.如何与私有API集成

由于私有API通常驻留在具有高度安全性的环境中,因此与它们的集成需要通过非常严格的防火墙或VPN服务,来发起调用(当然首先需要能够允许外部可以访问到)。这意味着,如果您想知道本公司的集成中间件是否确实有用,就应该去检查它是否具有某种安全机制/层,去访问本地系统和Web应用。

同样值得注意的是,那些对于公共API的成功至关重要的某些方面,却可能在私有API中显得无关紧要。例如,由于已被假定为受到了公司现有安全策略的保护,因此安全性机制在私有API并不重要。同时,由于开发人员经常在文档中使用内部或技术性的名称,因此版本控制不一定会被包含在设计中。

无论您准备采用手动编码,还是某个集成式中间件,新加入团队的成员或其他部门,在集成私有API时都会面临一些挑战。因此,如果您正在负责设计私有API的话,我建议您像设计公共API那样,去准备好API的各项最佳实践和检查。

5.伙伴API

伙伴API属于内部API的一个类别,但这些API通常在业务伙伴和B2B客户之间共享,而不是在某个组织内自己使用。此类API的一个常见用例是,在供应链集成或销售点的集成中,连接两个内部业务软件的应用程序。在这种情况下,API往往充当的是经典的EDI(电子数据交换,Electronic data interchange)集成的替代方案。

伙伴API通常具有更加强大的授权、身份验证和安全功能。它们能够允许外部各方去访问某些敏感数据。例如,伙伴CRM或ERP应用的客户数据,或者是医疗机构患者医疗数据等。

6.如何与伙伴API集成

由于伙伴API不是公开可用的,因此您可能无法找到允许即时“连接”的集成方案。如果您打算集成此类伙伴API的话,就需要提供良好的手动编码、或者去寻找支持自助服务、以及自定义连接器的集成中间件的帮助。

有时您可能需要将伙伴API与基于EDI的Web应用相连接,那么您就需要进行诸如从EDIFACT到JSON的各种数据格式的转换。当然,一个良好的企业集成平台,往往能够支持此类功能。此外,您也可以使用各种专用的解析器,例如:用于UN/EDIFACT文档的Javascript流解析器(https://openbase.com/js/edifact/documentation)。

7.复合API

我个人觉得复合API的使用场景最广泛。例如在购物车中创建订单时,就需要对多个端点进行多次API调用,其中包括:创建新的客户、创建新的订单、向该订单添加新的商品、展示分类商品等。一个复合API往往可以在一次性调用中,完成所有这些工作。这无疑加快了多任务处理的能力和效率。例如,下面是Salesforce的复合REST API的属性文件:

复制{"compositeRequest" : [{"method" : "POST","url" : "/services/data/v52.0/sobjects/Account","referenceId" : "refAccount","body" : { "Name" : "Sample Account" }},{"method" : "POST","url" : "/services/data/v52.0/sobjects/Contact","referenceId" : "refContact","body" : {"LastName" : "Sample Contact","AccountId" : "@{refAccount.id}"}}]}1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.

在上述文件中,其API在一次性调用中,最多可以有25个所谓的子请求。

复合API的另一个实用场景是,从多个服务中提取信息,以完成微服务架构模式中的单个任务。不过,复合API也不一定需要创建全新的API。在许多情况下,您可以通过在一个序列中包装多个调用或请求,来扩充现有API的设计。

8.如何与复合API集成

在集成方面,复合API与常规公共API并没有太大的区别。事实上,如果您的集成平台方案已经具有被用于REST或SOAP的通用连接器的话,您可以轻松地使用它来连接到复合API处。

9.与不同的API架构和协议集成

下面,让我们简要地讨论一下,在使用具有不同架构和/或协议的API时,该如何定义可接受的数据类型和命令。当然,在大多数时候,您可能会用到REST和SOAP等API。其中,REST是一种架构风格,而SOAP是一种协议。它们之间有着各种相似之处,可以通过HTTP和XML进行通信,因此彼此的集成非常容易。

当然,两者之间也有着显著的差异。例如,

  • 为了在服务器上公开Web应用业务逻辑的特定部分,SOAP会使用服务接口,而REST则使用URI。
  • REST API支持包括:纯文本、XML、JSON和CSV在内的多种数据格式,而SOAP仅支持XML。
  • REST通常也被认为比SOAP更轻量级、而且消耗的资源也更少。

就两者的集成而言,我们需要在这两种API之间进行某种“翻译”。当选择手动集成这些API时,您可以使用Postman等工具来自动执行此类操作。例如,您可以调用一个Web应用程序的SOAP API,并将返回的XML解析为您需要的数据。之后,您可以将该XML转换为诸如JSON格式,并将这些数据推送到另一个Web应用程序的REST API处。可见,当您的公司部署了可以默认处理REST和基于SOAP的Web应用与服务之间的数据转换集成API之后,它将使您的工作变得更加轻松,应用的效率大幅提升。

原文链接:https://dzone.com/articles/a-guide-to-api-types-and-integration-specifics

来源:51CTO技术栈

译者:陈峻

扫描二维码推送至手机访问。

版权声明:本文由小草网发布,如需转载请注明出处。

本文链接:http://www.nzt88.com/58897.html

分享给朋友:

“api是什么(API类型和集成规范指南)” 的相关文章

坐飞机不能说一路顺风(坐飞机不能说一路顺风还是一路平安)

坐飞机不能说一路顺风(坐飞机不能说一路顺风还是一路平安)

飞机不能说一路顺风的原因是什么?飞机准备在跑道上起飞的时候,实际上地面工作人员会选择逆风的时候起飞。 因为逆风的时候,飞机的机翼可以产生更多的升力。 当空气通过机翼表面时。机翼上的空气和下面的空气,形成速度差,从而形成上升力。 飞机着陆时也是这个理由。 另外,飞机逆风飞行,可以更安全地确保飞行员的驾...

转述句30个(转述句30个字)

转述句30个(转述句30个字)

什么是转述句?举个例子陈述句是表达别人说的话。 标点符号的变更:把直述句改为转述句,冒号为标点符号,删除双引号,加上句号改为第三人称的说法陈述句,通过加冒号和引号,加上句号,从第三人称变成第一人称。李明对我说:“去校长家拿回你和我的书。 ”。这是第一个句型的间接转述转化为直接引用,转述中的“我”是听...

长相思拼音版(长相思拼音版注音版)

《长相思》全文的拼音怎么写?《长相思》全文拼音如下。shnychn=,shutychn=,shnxin=yunnpnxn=。 Yshnqinzhn=dn=。山一步,水一步,身体向榆关那畔前进,夜晚是千纸灯。 译文:每次爬山过河,官兵们都不停地向山海关行进。 夜深了,千万个帐篷亮了灯。 )) fn...

长沙会战指挥官是谁(长沙会战指挥官是谁,参谋战是谁)

长沙会战总指挥官薛岳的参谋长是吴逸志吗长沙会战总指挥官薛岳的参谋长是吴逸志。1937年,日寇入侵中国,引发了全民抗战。 南京陷落后,北伐名将薛岳将军任第九战区司令长官,辖区包括江西、湖南等省。 吴逸志就任参谋长。 他们俩是东征北伐期间,甘苦患难的长衣泽,密切合作,情同手足。1939年9月至1941年...

张难先(张难先遇土匪)

封疆大吏辞官回家,路上被打劫,为何土匪打开行李后,马上跪送他离开?张难先是参加过辛亥革命,后来满洲事变后,他动员全国反抗日本。 他是个爱国的人之后,他在辞职回家的途中,被土匪袭击了。 那时,张难对土匪说自己一点钱也没有。 但是土匪肯定不相信国民党高层高级官员没钱。 我在那里赌了张难。 如果在他的行李...

佁怎么读(佁怎么读拼音怎么写)

左右结果,左边是单立人,右边是台 ,听说念yi 但字典也没有这个字,输入法也没有,我怎么输入电脑呢,谢“nirvanacare”:你好。) ) ) )读音yi全拼直接打yi,翻第8页(因为有页数的可能性,所以要耐心翻)。不会打王符五笔鸭五笔和万能五笔打WCKG四键。请试试看。 恭喜你。 再见。这个...

一个门客的自我修养(一个门客的自我修养txt下载)

一个门客的自我修养by天如玉txt免费小说在线看《一个门客的自我修养》百度网盘txt最新全集下载提取代码:f6sg《一个门客的自我修养》是完结篇爱情类网络小说,作者是天如玉。一个门客的自我修养_by天如玉_txt全文阅读,百度网盘免费下载抽屉代码: r1xm小说名称:门客自我修养作者:天如玉类型:城...

smarter怎么读(smarter怎么读音标)

smart的读音smart英[ sm : t ]美[sm:rt]adj .聪明; 敏捷的; 漂亮的; 整齐划一;vi .疼痛; 刺痛; 悲伤;n .创伤般的疼痛; 疼痛; 痛苦;[例句] hewassmartandwellgroomedbutnotgoodlooking他仪容漂亮,打扮漂亮...

阿阇梨(宽济阿阇梨)

阿舍黎是什么意思?阿舍黎又成为阿阇黎、阿阇梨、阿匹利、阿遮利耶。 简称鲸梨。 意译为:轨范师、正行、讨好群众、执行、供奉、教授、智贤、传授。 意思是教徒弟,端正其行为,是自己成为徒弟模范的老师,所以也被称为领导者。阿阇梨有五种:(一)出家阿阇梨,受戒时授十戒师,故又为十戒阿阇梨。(二)戒阿阇梨,受具...

胸腺肽说明书(胸腺肽胶囊说明书)

胸腺肽说明书(胸腺肽胶囊说明书)

注射用胸腺肽说明书通用名称:注射用胸腺肽曾用名:注射用胸腺素、注射用胸腺因子英文名: ThymopetidumforInjection汉语拼音: Zhusheyong贤贤太本品主要成分及其化学名如下本产品为白色或微黄色冻干品。...

小摄影师200字作文(小摄影师的作文怎么写)

小摄影师续写300字作文是300字吗摄影师续写八年级|300字|其他摄影师续写第二天,少年一次又一次地检查照相机,直到觉得自己很好才出发去高尔基家。 我到高尔基家的时候,已经是下午了。 这个时候,少年还在用扔纸团的方法,纸团的字不一样,内容如下。亲爱的高尔基同志:我是昨天来的那个男孩。 昨天浪费了你...

乌兰巴托的意思(乌兰巴托的夜歌词表达的意思)

蒙古首都乌兰巴托的意思是什么?乌兰巴托,中文意思是“红色英雄”乌兰巴托浩特才是“红色英雄城”呼和浩特“蓝色城市”乌兰巴托是什么意思乌兰巴托是蒙古国首都,建于草原上,位于蒙古高原中北部,面积4704.4平方公里,2017年人口约143.5万人,蒙古国人口约一半居住在这里,年轻人众多,市区有图拉河乌兰巴...

文公尺(文公尺对照表)

文公尺(文公尺对照表)

鲁班尺一尺等于现在的尺多少公分?46.08厘米。 厘米,也就是厘米。古代鲁班尺长46.08厘米,现代两种鲁班尺长分别为42.9厘米和50.4厘米。老屋非常重视尺寸,建筑设计师经常按白尺来确定整个房子的空间尺度,如高度、深度、面宽等,木匠则用鲁班尺测量裁定入口尺寸。相对而言,现代人在建筑设计和装修时,...

屠呦呦颁奖词(屠呦呦颁奖词)

诺贝尔评委会为屠呦呦写的颁奖词是什么?颁奖词是" thenobelassemblyatkarolinskainstitutethastodaydecidedtoawardthe 2015 nobelprizeinphysiologyormedicine "ithonehalfjointlytow...

提干是什么意思(士官提干是什么意思)

提干是什么意思?女兵在部队都干什么?提督是指士兵提拔为军官,主要面向1册、2册大学毕业生的士兵。 女兵入伍后从事文艺、通信、医疗、计生、财会等工作。部队提干什么意思晋升干部主要有两种方法。 1、大学生毕业生晋升干部2、保证优秀士兵入学,都要符合一定条件1、普通战士,提干基本文化水平不高,在部队有突出...

世界著名城市雅号(世界著名城市的雅号)

世界著名城市雅号(世界著名城市的雅号)

世界著名城市的别称米兰(米城)、芝加哥、莫斯科(千顶之城)、多伦多、洛杉矶)、天使之城)。米兰( Milan ),又称米城、米都,在古罗马时代被称为美第兰( Mediolanium ),是意大利第二大城市,米兰省省会和伦巴第州首府,位于伦巴第平原米兰也是世界著名的国际大都市之一,世界八大都会市区...