API创建

创建API

创建API是定义API请求的过程。您需要在创建中定义API的请求调用格式、定义网关抛向后端服务的请求格式、定义返回结果格式、定义参数校验规则等等。

定义请求的基本信息

API基本信息包括API分组、API名称、描述、API类型。

API创建时需要选择分组。分组是API的管理单元,创建API之前您需要先创建分组。(API分组的详细说明见下文的“分组及域名”)分组携带Region属性且每个分组有不同的域名,同一个分组下的API的Region和域名都是相同的。分组一旦选定不可更改。 API名称应为该分组下唯一,一旦选定不可更改。 API类型分为公开和私有两种。在公测阶段,两种类型无实际差别。

定义请求的后端服务信息

API后端服务信息包括后端服务类型、后端服务地址和后端超时时间。

后端服务类型。目前仅支持HTTP,其他类型如Sigma、Mock后续会陆续支撑。 后端服务地址。是您API的后端服务地址,可以包含动态参数,比如动态参数为username,写作[username],控制台会自动将动态参数匹配到Path中去,您可以选择性的对动态参数配置映射。 后端超时时间。指API请求到达网关后,由网关去调API后端服务的响应时间,由网关请求后端开始到网关收到后端返回结果的时间。该值不能超过30秒。

定义API请求格式

API请求格式定义包括协议及方法定义、Path的定义、入参定义、系统参数定义、参数映射、参数校验定义。

协议及方法定义。API调用支持HTTP/HTTPS协议。Method方法可选择PUT、GET、POST、DELETE、HEAD、MULITIPART。 Path定义。首先控制台会依据您之前输入的后端服务地址自动生成一部分Path,如果后端服务地址中存在动态参数,您需要选择性的为动态参数配置映射。完成映射后Path的一部分就自动生成了,您可以再次编辑来完成Path的配置。 入参定义。您在这部分定义用户调用API时需要传入的参数,分别对请求的Header、Query和Body进行入参定义。您需要定义用户请求传入的参数名称,参数类型如String、Number、Boolean、Json等。选择参数是否必填,并给出示例值、默认值及描述。Body参数可以选择透传。 参数校验定义。在定义入参时,您还可以点击“更多”来为该参数设置校验,如枚举值、String的长度校验、Number的最大最小值校验等等。网关会预先对非法请求进行拦截,减轻您后端服务的负担。 参数映射。如果您想要用户输入的参数名称与您后端实际的参数名称不符,或者您后端实际参数名称不方便直接暴露给用户,那么您只需要在定义参数时选择需要参数映射,既可以为每个参数配置起后端参数映射。 系统参数定义。系统参数对于API的调用者是不可见的。系统参数有两种,一种是网关的系统参数,具体内容如下表:

参数名称 参数含义 CaClientIp 发送请求的客户端IP CaDomain 发送请求的域名 CaRequestHandleTime 请求时间(格林威治时间) CaAppId 请求的APP的ID CaRequestId RequestId CaApiName API名称 CaHttpSchema Http Schema CaProxy 代理(AliCloudApiGateway) 在创建API时,您需要配置网关给您传送上述哪些系统参数,并且选择参数的位置和后端参数名称。

另一种是您的API后端服务需要的一些自定义系统参数,比如某一个常量参数。您需要配置参数值、后端参数名称以及参数在请求中的位置。

返回结果定义。即选定返回类型和配置返回示例,目前网关对于返回结果是不做处理的。

注意:您所有录入的参数,包括Path中的动态参数、Headers参数、Query参数、Body参数(非二进制)、常量参数、系统参数,参数名称保证全局唯一。即如果您同时在Headers和Query里各有一个名为“name”的参数,是不允许的。

完成以上定义后,您就完成了API的创建。下一步您可以测试、发布并开放API服务,给您的客户授权,同时还可以为API绑定签名密钥和流量控制等安全配置。

results matching ""

    No results matching ""