665
iPhone_iPad_Mac_手机_平板_苹果apple
API创建__使用手册(开放API)_API 网关-阿里云
创建API
创建API即在API网关录入API的定义。您需要定义API的基本信息、服务信息、请求信息、返回信息。
- 网关支持您配置对入参的预校验规则,让网关成为您后端服务的第一道关卡。
- 网关支持您配置前端和后端的全映射,即参数混排。如您可以让您的用户在Query传入参数,但是您后端从Header里接收,等等。以满足您需要将服务包装变形输出。
- 网关支持您配置常量参数、系统参数,这些参数对您的用户不可见,但是网关可以在中转时将常量参数、系统参数加入请求中,传递至后端服务,满足您后端的一些业务需求。比如您需要网关每次向您发送请求都带有一个keyword“aligateway”,您就可以把“aligateway”配置为常量参数,并指定接收的位置。
定义请求的基本信息
API基本信息包括API分组、API名称、安全认证方式、API类型、描述。
1.API创建时需要选择分组。分组是API的管理单元,创建API之前您需要先创建分组(API分组的详细说明见“API开放”部分),选择分组即选择Region。
2.安全认证方式:是API请求的认证方式,目前支持“阿里云APP”、“OpenID Connect”和“无认证”三种认证方式。
- A. 阿里云APP:认证方式即要求请求者调用该API时能够通过对APP的身份认证。
B. OpenID Connect:是一套基于 OAuth 2.0 协议的轻量级规范,提供通过RESTful APIs进行身份交互的框架。可以使用OpenID Connect和您的自有账号系统无缝对接,详细介绍请参照《OpenID Connect》
C. 无认证:认证方式即任何人知晓该API的请求定义后,均可发起请求,网关不对其做身份验证,均会转发至您后端服务。
3.API类型分为公开和私有两种。“私有”类型的API,当所在分组上架云市场时,默认不包括该类型的API。如果有用户想要调用您的API,您需要主动操作授权,否则用户无渠道获取API信息。“公开”类型的API,所有用户均有机会在“发现API”页面看到API的部分信息。“公开”类型的API都会跟API分组上架到云市场,供用户购买和调用。
定义API请求
这部分是定义用户如何请求您的API,包括协议、method、path、入参的定义。
- 协议及method。API调用支持HTTP/HTTPS协议。Method方法可选择PUT、GET、POST、DELETE、HEAD。
- Path。Path指相对于服务host,API的请求路径。请求Path可以与后端服务实际Path不同,您可以随意撰写合法的有明确语义的Path给用户使用。您可以在请求Path中配置动态参数,即要求用户在Path中传入参数,同时您的后端又可以不在Path中接收,可以映射为在Query、Header等位置接收。在《开放API接入API网关》中,有详细的举例说明,更有清晰的截图展示。
- 入参。定义您API的请求入参,即配置用户需要在什么位置传入什么参数。可选位置有Head、Query、Body、Path(Parameter Path),尤其当您在Path中配置了动态参数,那么在入参配置时需要对动态参数做配置说明。支持的参数类型有 String、Number、Boolean。
- 参数校验规则。每个入参后可点击“编辑更多”配置校验规则。如String的长度,Number的枚举等等。网关会参照校验规则对请求做初步校验,如果入参不合法,则不会到达您的后端服务,大大的降低了后端服务的压力。
定义后端服务信息
这部分主要是定义一些参数的前后端映射,具体描述的是您后端真实服务的API配置。用户请求到达网关后,网关会根据您的后端配置映射为对应实际后端服务的请求形式,去请求您的后端。包括后端服务地址、后端Path、后端超时时间、参数映射、常量参数、系统参数。
- 后端服务地址。后端服务的host,可以是一个域名,也可以是 http(s)://host:port 的形式。
- 后端Path。Path是您的API服务在您后端服务器上的请求路径,实际请求路径。若您后端Path需要接收动态参数,那么需要声明该参数是调用者从哪个位置哪个参数传入的,即声明映射关系。
- 后端超时时间。指API请求到达网关后,网关去调API后端服务的响应时间。由网关请求后端开始到网关收到后端返回结果。该值不能超过30秒。超过该值网关会放弃请求后端服务,并给用户返回相应的错误信息。
- 参数映射。网关支持参数在前端、后端的全映射,包括名称映射和位置映射。位置映射包括Path、Header、Query、Body的混排映射。也就是说,您可以将您的后端服务通过映射完成包装成更规范、更专业的API形态。这部分就是在声明前后端API映射关系的。在《开放API接入API网关》中,有详细的举例说明,更有清晰的截图展示。【注意前后端参数名称不能重复】
- 常量参数。比如您需要网关每次请求您后端时都带有标记“apigateway”,那么您可以直接将标记配置为常量参数。常量参数对您的用户不可见,请求达到网关后,网关会自动在指定位置加上该参数再去请求您的后端。
系统参数。指API网关的系统参数,这些参数默认不会传递给您,但是如果您需要获取,您可以在API里配置接收位置和名称。具体内容如下表:
参数名称 参数含义 CaClientIp 发送请求的客户端IP CaDomain 发送请求的域名 CaRequestHandleTime 请求时间(格林威治时间) CaAppId 请求的APP的ID CaRequestId RequestId CaApiName API名称 CaHttpSchema 用户调用API使用的协议,http或者https CaProxy 代理(AliCloudApiGateway)
注意:您所有录入的参数,包括Path中的动态参数、Headers参数、Query参数、Body参数(非二进制)、常量参数、系统参数,参数名称保证全局唯一。即如果您同时在Headers和Query里各有一个名为“name”的参数,是不允许的。
完成以上定义后,您就完成了API的创建。下一步您可以发布、测试并开放API服务到市场,还可以为API绑定签名密钥和流量控制等安全配置。
最后更新:2016-12-02 17:38:09
上一篇:
API调用示例__快速入门(调用API)_API 网关-阿里云
下一篇:
API开放__使用手册(开放API)_API 网关-阿里云
免费项目说明__购买指南_消息队列 MQ-阿里云
ALIYUN::ECS::VSwitch__资源列表_资源编排-阿里云
查找数据__数据管理手册_用户操作指南_大数据开发套件-阿里云
DRDS慢SQL明细__开发手册_分布式关系型数据库 DRDS-阿里云
阿里云回应局座张召忠喊话云栖大会:我们给你留了位置
GetUser__用户管理接口_RAM API文档_访问控制-阿里云
授权账号权限__账号管理_API 参考_云数据库 RDS 版-阿里云
常用 SQL 命令(MySQL)__附录_用户指南_云数据库 RDS 版-阿里云
域名级别__附录_API文档_云解析-阿里云
获取所有订阅信息__订阅管理相关接口_Open API_消息队列 MQ-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云