API策略不再只是开发人员的事

云计算
应用程序接口(API)是一种连接,通过提供一套工具和协议来描述某个程序应该如何同另一个程序交互。但近来,该定义已扩大到不只是指API本身的细节,也包括与其互连的协同服务。那些认为API战略是属于开发人员的“书呆子”专利的IT运营团队将会惊讶的发现API在企业的整体战略重要性方面有多大的影响。

那些认为API战略是属于开发人员的“书呆子”专利的IT运营团队将会惊讶的发现API在企业的整体战略重要性方面有多大的影响。

应用程序接口(API)是一种连接,通过提供一套工具和协议来描述某个程序应该如何同另一个程序交互。但近来,该定义已扩大到不只是指API本身的细节,也包括与其互连的协同服务。

亚马逊提供了一个最早的外部API战略用途,当它为那些希望在亚马逊网站中销售的书商和其他零售商提供了其电子商务引擎时。“亚马逊从此不再只是一个零售商,而是在一个生态系统中占有一席之地的服务商,”一名位于马萨诸塞州Cambridge的Forrester研究公司的分析师Randy Heffner说道。“这全是因为API的启用。”

大型的公共API程序,如亚马逊,推特和谷歌所提供的那些,是最早面向外部的API。现在,许多企业都开发了自己的API策略,使用API将他们的应用程序链接到合作伙伴,以及连接内部各部门之间的API,从而建立各种微服务。开发者和IT企业会收到来自组织内部的需求,希望能对外公开某些方面的数据。在某些情况下,这甚至可能创造了一个用数据来赚钱的机会。

“我们正从API是[一件硅谷的事],转变成在整体经济中几乎所有人都要做些跟API有关的事情,”Steve Willmott,前研究人员和开发人员,现在是3Scale,一家他创立的API管理公司的现任CEO说道。

重要的是,API比在过去更容易构建。本世纪初主要用来构建API的技术,简单对象访问协议和XML,已经让位给了REST(表述性状态转移)API,它是基于HTTP协议的一种架构风格,并使用JSON作为首选的格式。

这些轻量级的开发技术帮助了一家公共事业公司从传统的XML数据转变为API网关。Essent,荷兰最大的能源公司,他们开发了一个API策略,采用对外的API来与电动汽车充电站和其他第三方供应商交互。

  "

一个好的API应该具备哪些属性?

  • 文档公开。公共文档被更多的人看到才能得到最大数量的审阅,并保持良好的阅读顺序。
  • 客户应该独立于语言和操作系统--REST可以做到这点。API必须可以被Windows和Linux的开发人员同时访问。C#和基于REST的API可以实现这一目标,因为它们是基于超链接的。
  • 一个外部API应该被创建它的团队所使用。如果你的API有任何缺陷,你的开发人员会第一个发现他们。
  • 客户案例公开。你需要提供API的使用案例来示范它应该如何使用。
  • API必须是安全的。API应该像其他接口(GUI,WUI,和/或命令行)一样受到相同的授权和认证保护。
  • 一个API的新版本应该提供尽可能少的变化,并且应该向后兼容。
  • API应该是可扩展的。一个API应该能够承载巨大的访问量。

——CloudBolt CTO——Bernard Sanders

"

在Essent,客户可以通过一个Web应用程序看到那个充电站是可用的,G该程序从法国供应商Axway的API网关接收实时的API数据。同样,Essent也有实时数据来判断一个汽车充电站是否正在运营,据Niels Wolf说道,他是总部位于阿姆斯特丹的Essent的高级架构师。

Essent从大约四年前开始将数据转向API来替客户和合作伙伴提供更多的灵活性。这使IT专业人员和开发人员的工作变得更轻松--其中最大的好处是有一个集中的地方来处理潜在的安全威胁并且在同一个信息流中允许多个不同的协议类型。

“这就是为什么我们使用一个特定的网关,”Wolf 说道。“你可以在同一时间设置所有的[API]调用规则。如果我们受到攻击,我们有一个很好的位置来防御并同时提供灵活性。”

原文链接:www.searchcloudcomputing.com.cn/showcontent_91335.htm

责任编辑:Ophira 来源: TechTarget中国
相关推荐

2022-11-02 14:43:29

2018-10-12 22:50:20

机器学习API人工智能

2020-04-29 08:28:11

React开发代码

2021-11-16 19:19:07

API接口前端开发

2010-08-09 16:09:25

2013-01-10 10:10:11

Web开发Web工具

2009-12-11 14:50:14

Visual Basi

2009-11-23 20:07:51

ibmdw开发

2021-02-19 09:33:01

kubernetesJAVA服务

2012-05-30 15:15:42

ibmdw

2023-03-15 07:12:53

企业开发人员提供商

2020-01-06 17:45:13

GitJavaScriptCSS

2023-01-11 19:50:35

2011-12-21 09:19:32

API

2021-02-16 16:44:40

RustJavaScript开发

2022-01-06 16:15:58

自测测试开发人员

2010-08-16 09:21:35

Windows Pho

2012-12-14 08:55:45

开发人员产品经理

2021-12-10 23:48:19

Java开发技术

2009-07-20 16:11:41

JRuby Swing
点赞
收藏

51CTO技术栈公众号