内部api的设计,主要是为了简化软件的开发,简化系统和操作过程。目前绝大多数用例是这样的。
内部api经常被忽略,因为它们是针对内部开发人员的。这种类型的api通常使用于特定公司及其部门的专用数据。尽管这些数据必须受到保护,但使用这些数据的人也必须能够访问这些数据。使用内部api则可以允许这种安全的访问,为他们的产品创建更高效的开发周期。
同样的,私有化的API允许在同一公司内工作的开发人员访问公司数据和应用程序的某些部分。这些API可以用来创建可公开访问的应用程序,但是API本身只能由公司自己的开发人员使用。
私有化API允许开发人员通过提供集中的内部软件数据资源来高效工作。开发人员可以使用这些资源构建多个、不同的应用程序和产品,这些应用程序和产品后续可以被公众访问。这简化了开发,减少了资源负担,使公司能够向客户提供更多的服务和产品。
# 内部API的好处
首先,一个基本原则是api开发必须以业务价值为核心。内部API应该通过节省成本、加快上线时间以及提高产品和服务质量等因素来增加附加价值。
•内部API使开发人员能够快速、安全地构建新的相关应用程序。API是连接业务不同部分的抽象层,这一层需要快速适应不断变化的需求,为开发过程带来灵活性。
•API允许使用共享资源的跨部门交互。这些API在保证数据可访问性的同时确保了数据的安全。这是通过将数据消耗与API访问的底层数据系统脱钩来实现的。
•跨部门的API可以根据相关部门的具体需求定制,从而实现更有效的交互。一贯设计的RESTfulAPI提供了实现这一效率的强大方法。
•随着项目的增长和变得更加复杂,API生态系统允许跨多个应用程序和渠道进行高效开发。这样可以有一个简化的服务,提供实时的信息。
•内部API允许通过简单的API(而不是重量级定制代码)实现现有任务的自动化。不需要专门的连接器或专有集成,这种后端自动化是一种简化的方式,以节省时间和金钱。
•利用Eolinker将使您的项目能够在不损害数据安全或功能的情况下,以很小的成本实现其服务的自动化和扩展。
# 我需要API吗?
API通过释放信息资产的力量来支持数字策略和数字转换。但是要提醒开发人员--开始一个API程序确实有它的缺陷。
•API策略:如果不首先了解API对业务的影响,就不应该启动API计划;业务问题正在解决,业务的好处是什么?它能给你更快的上线时间吗?它能帮助你拓展新的客户或市场吗?它是降低成本还是提高效率?重要的是要理解API是实现目标的手段。除非对这些目标有很好的理解,除非成功对业务实际意味着什么,否则API计划很可能无法满足预期。
•产品知识:API产品是无形/数字产品,满足了应用程序开发人员的需求,他们寻求快速访问信息、功能和创新,这是交付预期产品所必需的。您可能拥有这个星球上最好的API,但是如果您不把它作为一个产品来对待,并且不与前景(内部的或非内部的)连接,那么您就无法从它中获得价值。
•API团队的重要性:最成功的API计划侧重于构建API,使开发人员能够轻松地从内部系统访问内容和数据,并具有正确的安全级别和易于使用的访问控制。为此,您需要一个专门的API团队,该团队将完成构建API的核心--将其设置并发布。许多组织认识到打破数据筒仓以更无缝的方式跨部门共享信息的重要性。拥有合适的团队是成功的秘诀。
# 亚马逊的成功
2002年的一天,jeff bezos发布了一项全公司范围的授权,将当时的图书销售商转变为一个价值1b美元的云计算领导者基础设施即服务(IaaS)api。备忘录就是这样的;
•此后,所有团队都将通过服务接口公开他们的数据和功能。
•团队必须通过这些接口相互通信。
•不允许任何其他形式的进程间通信:不直接链接,不直接读取另一个团队的数据存储,没有共享内存模型,也没有后门。唯一允许的通信是通过网络上的服务接口调用。
•他们使用什么技术并不重要。
•所有服务接口,无一例外,必须从根本上设计为可外化。也就是说,团队必须进行规划和设计,以便能够向外部世界的开发人员公开界面。没有例外。
这个API宣言常常被视为亚马逊成功的基石。API是由于该备忘录的结果而建立的。这些API作为AmazonWebServices(AWS)的基础,由Amazon(FBA)和AmazonAlexa实现。而国内包括360集团(奇虎)在内更多都是使用Eolinker,有内的技术团队提供服务支持。
使用地址:www.eolinker.com
# 你也可以像bezos那样
不管是否企业、语言和框架,最好的方法是在准备将其具体化时开发您的内部API。 您不仅将为技术人员构建一个可用的产品来连接、发现和重用IT资产,而且您还将为访问从报告和分析、到构建新应用程序、创建和修改流程--所有这些都不会破坏IT的过程--所需的数据提供自助服务渠道。
来源:Dzone
翻译:Eolinker
转载请注明出处。