导读 Google公开了用于创建HTTP或RPC API的API设计指南。对于创建连接Google Cloud Endpoints的gRPC API的开发人员来说,这些设计原则更值得推荐使用。

早在2014年,Google在创建与服务API或其他服务API时就开始在内部使用了这些设计指南。指南中探讨了HTTP或RPC API的设计。虽然HTTP API(也称为REST API)的优点是公认的,但是它们距离实用尚有时日。Google推荐RPC尤其是其变体gPRC。据Google说,虽然大部分的因特网API是HTTP,但是通常被云服务和服务提供商内部使用的是RPC,并在数量上远高于HTTP API。

对于通过方法操作一个或多个资源这样的场景,Google推荐在设计RPC API时使用类REST方法。资源(也可称为域实体)使用URI表示,也可以在网络路径格式后面加上唯一的名称(ID)。同一类型的资源将组织成同一集合。

使用的标准方法包括Create、Delete、Get、List和Update。对于不能映射到任一标准方法上的操作,例如数据库事务,用户也可以创建自定义方法。推荐使用较少的方法来操作尽可能多的资源。

在创建资源时,推荐执行如下步骤:
1.确定API提供的资源类型。
2.确定资源间关系。
3.基于类型和关系确定资源的命名模式。
4.确定资源模式。
5.为资源附加最小的方法集。
Google使用“语义化版本”标准命名版本,命名使用三个数字,形式为“主版本.次版本.补丁”。预发布版本在命名时添加了一个前缀,例如“1.0.0-alpha”。

对于资源、标准、自定义方法、标准域、错误、使用proto3创建API等方面,指南提供了更多细节和例子。

原文来自:http://www.linuxidc.com/Linux/2017-03/141809.htm

本文地址:http://www.linuxprobe.com/google-api-guide.html编辑:程伟,审核员:王毅