为了您快速使用API网关产品,阿里云为您提供了多种API网关的交互方式,本文旨在向您介绍API网关开放的OpenAPI及其支持的集成方式。
OpenAPI介绍
为了能够让开发者快速高效的学习和使用云产品OpenAPI,阿里云为用户提供OpenAPI网站。它是一款集OpenAPI智能搜索、文档、在线调试、SDK获取、CodeSample、调用出错诊断、调用统计为一体的产品。您可以在OpenAPI门户中调用阿里云各云产品开放的OpenAPI,查看OpenAPI请求和返回结果。此外,OpenAPI门户会自动生成相应的SDK调用示例,帮助您快速使用阿里云产品。更多信息,请参见什么是OpenAPI。
版本说明
阿里云OpenAPI通过版本号管控各时期云产品大版本的API列表,例如API网关目前支持2016-07-14版本的API列表,2016-07-14代表的是API版本号而非时间概念,所展示的都是最新的API公开数据,并非自2016-07-14之后就未更新。
|
版本号 |
说明 |
|
推荐使用 |
在线调试
API网关在OpenAPI门户提供API调试功能。在调用前,您需要了解API网关提供的版本、接入点、接口风格、调用方式等信息。
在 OpenAPI 门户左侧导航树中展开实例分类,选择创建实例 CreateInstance接口。在中部参数表单中选择服务地址(如华东1(杭州)),填写必填参数 ChargeType(付费类型,取值 PostPaid 或 PrePaid)、InstanceName(实例名称)、InstanceSpec(实例规格,如 api.s1.small)、HttpsPolicy(HTTPS 策略)和 Token(口令),按需填写可选参数 ZoneId(可用区)、Duration(包年包月时间)、PricingCycle(包年或包月类型)和 AutoPay(是否自动付费),然后单击发起调用。
调试入口
调试API入口为:API网关调试-入口。
接入点说明
根据相关资源所在地域,选择对应的服务接入点地址,以获得最低延迟。例如华东1(杭州)公网接入地址为:apigateway.cn-hangzhou.aliyuncs.com,VPC接入地址为:apigateway-vpc.cn-hangzhou-finance.aliyuncs.com。
-
公网接入地址在全球都可访问。
-
VPC(Virtual Private Cloud)隔离了虚拟网络,每个VPC对应一个虚拟化网络。VPC地址的优势:
-
高安全性:VPC接入地址只能在VPC内部访问,提供更高的安全性和隐私性。
-
更快的响应速度:由于VPC接入地址在VPC内部网络中运行,其响应速度通常比公网接入地址更快,并且可以避免公网延迟和带宽限制等问题。
-
更低的成本:VPC接入地址可以使用内部网络通信。
-
更多信息,请参见服务接入点。
接口风格
RPC风格。
用户身份
当您登录OpenAPI网站后,OpenAPI默认使用您所登录的账号进行在线OpenAPI调试。由于阿里云账号拥有所有API的访问权限,存在较高风险,因此不建议您使用阿里云账号在线调试API。强烈建议您创建并使用RAM用户进行API访问或日常运维。请根据业务的实际情况按需分配权限后进行API调用。RAM用户需具备操作云备份资源的权限。具体操作,请参见创建RAM用户进行云备份操作。
|
用户身份 |
支持情况 |
|
支持 |
|
|
RAM 用户(推荐) |
支持 |
|
RAM角色 (推荐) |
支持 |
更多信息
集成方式
API 网关提供了阿里云SDK、阿里云CLI、资源编排ROS、Terraform和自定义封装这几种集成方式,您可以根据业务的实际需要进行选择。
阿里云SDK方式是最易于集成,且支持度最好的OpenAPI调用方式,推荐您选择使用SDK。
|
集成方式 |
支持情况 |
|
阿里云SDK |
支持 |
|
阿里云CLI |
支持 |
|
资源编排ROS |
部分支持 |
|
Terraform |
部分支持 |
|
自定义封装 |
支持 |
-
阿里云SDK
-
阿里云为开发者提供了多种编程语言(Java、C#、Go、Python、Node.js/TypeScript、PHP、C++ 等)的SDK。开发者只需集成SDK,通过SDK暴露的方法直接调用OpenAPI。SDK统一封装了签名逻辑、超时机制、重试机制,并提供了接口请求Request对象和接口返回Response对象,易于开发。更多关于阿里云SDK的介绍,请参见阿里云SDK。
-
支持使用域名服务SDK调用OpenAPI,支持语言及依赖的安装方法请参见Java SDK调用示例。
-
-
阿里云CLI
阿里云命令行工具可以帮您在使用命令行终端时,使用
aliyun命令与阿里云服务进行交互,管理云服务资源。有关阿里云CLI的更多详细信息,请参见什么是阿里云 CLI。 -
资源编排ROS
资源编排服务ROS(Resource Orchestration Service)是阿里云提供的一项简化云计算资源管理的服务。开发者和管理员可以编写模板,在模板中定义所需的阿里云资源(例如:ECS 实例、RDS 数据库实例)、资源间的依赖关系等。ROS 的编排引擎将根据模板自动完成所有资源的创建和配置,实现自动化部署及运维。更多详情,请参见什么是资源编排服务。
-
Terraform
Terraform 是一种开源工具,用于安全高效地预览,配置和管理云基础架构和资源。它与阿里云的资源编排服务的运行机制类似,通过将模板转化为内部数据后完成 OpenAPI 调用。更多详情,请参见什么是 Terraform。
-
自定义封装API调用
原生HTTP调用需要您自己实现签名算法,并构建自定义请求,发起HTTP调用。有关签名机制的更多详细信息,请参见API概览和V3版本请求体&签名机制。
注意事项
-
如果调用API网关API后返回错误,您需要根据返回的错误码提示检查传入的请求参数及其取值是否正确。更多信息,请参见错误代码表。
-
您也可以记录下调用返回的RequestID或SDK报错信息,通过阿里云OpenAPI诊断平台进行自助诊断。