创建 API
在 API 网关中,API 发布者将应用的服务接口注册并对外发布后才可以被外部客户端调用。本文介绍如何快速在控制台创建并发布一个 API 服务。有关 API 配置属性的详细说明,参见 API 属性说明。
创建 HTTP API
进入 API 网关控制台页面,在左侧导航栏中选择 API 发布 > API 管理。
在 API 列表页,单击列表右上方的 创建 API。
在新页面中,选择 HTTP API 类型,单击 创建。
在 定义 API 步骤中,您需要配置以下信息:
所属分组:必填,用于将 API 进行逻辑的分组,分组下的 API 相同的分组 ID 进行隔离。
说明您可以选择从下拉菜单中选择已有分组,也可以单击 创建分组 新建一个 API 分组。详见 创建 API 分组。
API 名称:必填,用于识别 API,支持英文字母、中文、数字、下划线(_)、连接符(-),32 个字符以内。
说明同一个 API 分组下,API 名称不能相同。
描述:选填,用于描述 API 的作用等,64 个字符以内。
API 授权应用类型:必选,指定可以订阅并调用该 API 的应用类型。
目前支持的类型为 应用,表示 API 发布后支持 Web 浏览器、H5 容器、小程序、JS、业务系统的调用。
请求路径:必填,针对应用设置的请求资源的 URL,通过请求路径可以定位到要请求的资源。
支持英文字母、数字、下划线(_)、连接符(-),200 字符以内。
以斜杠(/)开头,不能以斜杠 / 结尾,格式示例 :
/getUserInfo
。路径参数透传需要用
{}
标识参数,格式示例:/home/{id}
。
说明后端配置请求路径需要为空。
路径匹配规则:如订阅并调用该 API 的应用类型为 应用 时,必填。
绝对匹配:表示只有请求的路径和配置的路径完全一样时才能匹配成功。
前缀匹配:如希望带有某个前缀的请求全部匹配到某一个 API,则可以使用前缀匹配。
方法:必填,表明要对给定的 HTTP 资源执行的操作:
GET:检索服务器中的数据。
POST:将数据发送到服务器进行处理。
PUT:更新服务器中存储的数据。
DELETE:删除服务器中的数据。
安全认证:必选,根据实际需要自行选择。
密钥认证:表示订阅应用访问授权的 API 时使用密钥进行身份认证。
无需认证:表示订阅应用访问授权的 API 时不需要身份认证。
请求参数:可选,详见 API 属性说明 > 请求参数。
响应参数:可选,详见 API 属性说明 > 响应参数。
单击 下一步,进入 后端配置 页面,您需要选择 后端配置类型 并完成后端配置信息:
无:表示网关接收到前端请求后,不转发到业务集群。
Mock:表示如果接口后端还没有提供,使用 Mock 模拟一个后端服务。
Mock 数据:必填,输入 Mock 的后端服务数据,JSON 格式。
系统集群:表示网关接收到前端请求后转发到真实业务系统的集群。
协议类型:必选,表示网关接收到请求后转发给的后端服务使用的通信协议类型。协议不同,需要配置的信息也有所不同。
HTTP
请求路径:必填,API 请求所指向的资源 URL。以斜杠(/)开头,支持字母、数字、下划线(_)、连接符(-),200 字符以内。
SOFARPC
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。服务标识:选填,支持指定服务的 uniqueId。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。
DUBBO/DUBBOX
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。实体参数:参数实体指的是参数的全路径,例如:Ljava/lang/String;自定义参数实体时注意以
;
结尾,以L
开头。服务版本:DUBBO 接口服务发布的版本号,可以参考下文 DUBBO 服务发布 XML 实例。
DUBBO 分组:DUBBO 接口服务发布的分组,可以参考下文 DUBBO 服务发布 XML 实例。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。
DUBBO 服务发布 XML 实例
<beanid="testService"class="com.dap.provider.TestServiceImpl"/> <dubbo:serviceref="testService" interface="com.dap.api.IService" group="dubbo分组" version="服务版本"timeout="5000"/>
超时时间:必填,API 请求超时时间,单位为毫秒(ms)。
路由策略:必选,表示当网关接收到请求后使用的路由策略。详见 创建路由规则。
根据 Header 路由:根据 Header 里带的参数路由。
根据权重路由:数值范围为 0-100,所有规则加起来为 100。
根据请求路径/接口路由:即直接转发。
根据 LDC 路由:即 LDC 单元化路由转发。
说明使用单元化路由转发前,需要在单元化应用服务中创建统一接入实例,具体内容请参见 创建统一接入实例。
系统集群:必选,选择当前环境内已配置好的系统集群,支持选择跨 VPC 集群。您也可以单击 创建系统集群 直接新建一个系统集群。详见 创建系统集群。
响应参数映射自定义配置:可选,支持从下拉菜单中选择现有的响应参数映射规则,或单击 新建参数映射规则 直接创建一个响应参数映射规则。更详细的创建步骤,参见 创建参数映射。
请求参数映射配置:可选,支持选择 参数名映射 或 自定义配置。选择 自定义配置,即可使用现有的请求参数映射规则。
单击 创建 即可。
HTTP API 创建完成后,您可以单击 立即发布 发布该 API,单击 进入 API 详情 查看 API 详细信息,或单击 返回 API 管理 回到 API 列表页。
创建 SOFARPC API(协议转换)
在 API 发布 > API 管理 页面,单击 API 列表右上方的 创建 API。
在新页面中,选择 SOFARPC API(协议转换)类型,单击 创建。
在 定义 API 步骤中,您需要配置以下信息:
API 分组:必选,用于将 API 进行逻辑的分组,分组下的 API 相同的分组 ID 进行隔离。
API 名称:必填,用于识别 API,支持英文字母、中文、数字、下划线(_)、连接符(-),32 个字符以内。
说明同一个 API 分组下,API 名称不能相同。
描述:选填,用于描述 API 的作用等,64 个字符以内。
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。服务标识:选填,支持通过 uniqueId 指定服务。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。报文类型:必选,选择
application/json
。安全认证:必选,根据实际需要自行选择。
密钥认证:表示订阅应用访问授权的 API 时使用密钥进行身份认证。
无需认证:表示订阅应用访问授权的 API 时不需要身份认证。
请求参数:可选,详见 API 属性说明 > 请求参数。
单击 下一步,进行后端配置:
无:表示网关接收到前端请求后,不转发到业务集群。
Mock:表示如果接口后端还没有提供,使用 Mock 用于模拟一个后端服务。
Mock 数据:必填,输入 Mock 的后端服务数据,JSON 格式。
系统集群:表示网关接收到前端请求后转发到真实业务系统的集群。
协议类型:必选,表示网关接收到请求后转发给的后端服务使用的通信协议类型。
HTTP
请求路径:API 请求所指向的资源 URL。以斜杠(/)开头,支持字母、数字、下划线(_)、连接符(-),200 字符以内。
超时时间:必填,API 请求超时时间,单位为毫秒(ms)。
方法:表明要对给定的 HTTP 资源执行的操作,包括 GET、POST、PUT 和 DELETE。
报文类型:HTTP 服务报文类型,目前仅支持
application/json
。报文编码:HTTP 服务报文编码,目前仅支持
UTF-8
。路由策略:必选,表示当网关接收到语法后使用的路由策略。详见 创建路由规则。
根据 Header 路由:根据 Header 里带的参数路由。
根据权重路由:数值范围为 0-100,所有规则加起来为 100。
根据请求路径/接口路由:直接转发。
系统集群:必选,选择当前环境内已配置好的系统集群,或单击 创建系统集群 直接新建一个系统集群。详见 创建系统集群。
DUBBO/DUBBOX
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。实体参数:参数实体指的是参数的全路径,例如:Ljava/lang/String;自定义参数实体时注意以
;
结尾,以L
开头。服务版本:DUBBO 接口服务发布的版本号,可以参考下文 DUBBO 服务发布 XML 实例。
DUBBO 分组:DUBBO 接口服务发布的分组,可以参考下文 DUBBO 服务发布 XML 实例。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。
DUBBO 服务发布 XML 实例
<beanid="testService"class="com.dap.provider.TestServiceImpl"/> <dubbo:serviceref="testService" interface="com.dap.api.IService" group="dubbo分组" version="服务版本"timeout="5000"/>
单击 创建 即可。
创建 DUBBO API
在 API 发布 > API 管理 页面,单击 API 列表右上方的 创建 API。
在新页面中,选择 DUBBO API 类型,单击 创建。
在 创建 DUBBO API 页面,您需要配置以下信息:
API 分组:必选,用于将 API 进行逻辑的分组,分组下的 API 相同的分组 ID 进行隔离。
API 名称:必填,用于识别 API,支持英文字母、中文、数字、下划线(_)、连接符(-),32 个字符以内。
说明同一个 API 分组下,API 名称不能相同。
描述:选填,用于描述 API 的作用等,64 个字符以内。
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。实体参数:选填,DUBBO 协议下的实体参数路径,例如:
com/alipay/xc/dubboserver/rpc/xxxx
。说明您可以通过单击 添加 来添加多个实体参数。
DUBBO 分组:选填,作为 DUBBO 服务的标识,主要用于服务注册和服务发现。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。报文类型:必选,目前仅支持
application/json
。报文编码:必选,目前仅支持
UTF-8
。安全认证:必选,根据实际需要自行选择。
密钥认证:表示订阅应用访问授权的 API 时使用密钥进行身份认证。
无需认证:表示订阅应用访问授权的 API 时不需要身份认证。
请求参数:可选,详见 API 属性说明 > 请求参数。
单击 下一步,进入 后端配置 页面,您需要选择 后端配置类型 并完成后端配置信息:
系统集群:表示网关接收到前端请求后转发到真实业务系统的集群。
协议类型:必选,表示网关接收到请求后转发给的后端服务使用的通信协议类型。协议不同,需要配置的信息也有所不同。
HTTP
请求路径:必填,API 请求所指向的资源 URL。以斜杠(/)开头,支持字母、数字、下划线(_)、连接符(-),200 字符以内。
方法:必填,表明要对给定的 HTTP 资源执行的操作,包括 GET、POST、PUT 和 DELETE。
报文类型:必选,目前仅支持
application/json
。报文编码:必选,目前仅支持
UTF-8
。
SOFARPC
接口名称:必填,支持英文字母、数字、英文句号(.)、冒号(:)、@,以小写字母作为开头,格式示例:
com.alipay.testapp.xxxx.ConfigFacade:1.0@DEFAULT
。服务标识:选填,支持指定服务的 uniqueId。
方法名:支持英文字母、数字组成,以小写字母作为开头,格式示例:
getUserID
。
超时时间:必填,API 请求超时时间,单位为毫秒(ms)。
路由策略:必选,表示当网关接收到请求后使用的路由策略。详见 创建路由规则。
根据权重路由:数值范围为 0-100,所有规则加起来为 100。
根据请求路径/接口路由:即直接转发。
根据 LDC 路由:即 LDC 单元化路由转发。
说明使用单元化路由转发前,需要在单元化应用服务中创建统一接入实例,具体内容请参见 创建统一接入实例。
系统集群:必选,选择当前环境内已配置好的系统集群。您也可以单击 创建系统集群 直接新建一个系统集群。详见 创建系统集群。
完成后单击 创建,即可完成一个 DUBBO API 的创建。