赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 云服务器 ECS
  4. 开发参考
  5. 开发最佳实践及常见问题
  6. 如何通过内网调用API

如何通过内网调用API

  • 开发最佳实践及常见问题
  • 发布于 2025-04-01
  • 0 次阅读
文档编辑
文档编辑

如果专有网络VPC类型的ECS实例没有设置公网IP,则无法调用API。本文介绍该类实例如何通过阿里云内网调用API。

背景信息

由于云服务器ECS提供的接入地址(Endpoint)为公网服务地址,当您的ECS实例没有分配公网带宽或者不存在公网IP地址时,无法使用阿里云CLI或者SDK等工具发起API请求。此时,您可以通过以下两种方式实现阿里云内网调用API。

  • SDK:Java SDK核心库在4.5.3版本起,支持通过VPC内网调用API。

  • CLI:使用CLI时,只需将Endpoint修改为对应地域的接入地址,即可实现内网调用API。

使用说明如下:

  • 两种方式仅适用于专有网络VPC类型ECS实例所在的地域,且仅能使用对应地域的接入地址(Endpoint)操作同地域资源,不支持跨地域操作。

  • 建议您使用已部署了阿里云CLI或者SDK的自定义镜像创建ECS实例,避免实例在无公网访问的条件下无法加载相关依赖。

支持的内网调用API的ECS接入地址(Endpoint)如下表所示,请确保您使用的Endpoint在列举范围内。

阿里云地域

地域ID

接入地址(Endpoint)

华东 1(杭州)

cn-hangzhou

ecs-vpc.cn-hangzhou.aliyuncs.com

华东 2(上海)

cn-shanghai

ecs-vpc.cn-shanghai.aliyuncs.com

华东5(南京-本地地域)

cn-nanjing

ecs-vpc.cn-nanjing.aliyuncs.com

华东6(福州-本地地域)

cn-fuzhou

ecs-vpc.cn-fuzhou.aliyuncs.com

华北 1(青岛)

cn-qingdao

ecs-vpc.cn-qingdao.aliyuncs.com

华北 2(北京)

cn-beijing

ecs-vpc.cn-beijing.aliyuncs.com

华北 3(张家口)

cn-zhangjiakou

ecs-vpc.cn-zhangjiakou.aliyuncs.com

华北 5(呼和浩特)

cn-huhehaote

ecs-vpc.cn-huhehaote.aliyuncs.com

华北 6(乌兰察布)

cn-wulanchabu

ecs-vpc.cn-wulanchabu.aliyuncs.com

华南 1(深圳)

cn-shenzhen

ecs-vpc.cn-shenzhen.aliyuncs.com

华南 2(河源)

cn-heyuan

ecs-vpc.cn-heyuan.aliyuncs.com

华南 3(广州)

cn-guangzhou

ecs-vpc.cn-guangzhou.aliyuncs.com

西南 1(成都)

cn-chengdu

ecs-vpc.cn-chengdu.aliyuncs.com

中国(香港)

cn-hongkong

ecs-vpc.cn-hongkong.aliyuncs.com

新加坡

ap-southeast-1

ecs-vpc.ap-southeast-1.aliyuncs.com

马来西亚(吉隆坡)

ap-southeast-3

ecs-vpc.ap-southeast-3.aliyuncs.com

印度尼西亚(雅加达)

ap-southeast-5

ecs-vpc.ap-southeast-5.aliyuncs.com

菲律宾(马尼拉)

ap-southeast-6

ecs-vpc.ap-southeast-6.aliyuncs.com

泰国(曼谷)

ap-southeast-7

ecs-vpc.ap-southeast-7.aliyuncs.com

日本(东京)

ap-northeast-1

ecs-vpc.ap-northeast-1.aliyuncs.com

韩国(首尔)

ap-northeast-2

ecs-vpc.ap-northeast-2.aliyuncs.com

德国(法兰克福)

eu-central-1

ecs-vpc.eu-central-1.aliyuncs.com

英国(伦敦)

eu-west-1

ecs-vpc.eu-west-1.aliyuncs.com

美国(硅谷)

us-west-1

ecs-vpc.us-west-1.aliyuncs.com

美国(弗吉尼亚)

us-east-1

ecs-vpc.us-east-1.aliyuncs.com

阿联酋(迪拜)

me-east-1

ecs-vpc.me-east-1.aliyuncs.com

方式一(推荐):SDK内网调用API

使用SDK过程中,只需要简单配置,即可实现内网调用API。Java代码示例如下所示:

DefaultProfile profile = DefaultProfile.getProfile("<RegionId>", "System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID")", "System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")");
IAcsClient client = new DefaultAcsClient(profile);

// 全局生效配置。其中,<product>为产品名称,云服务器ECS的值为Ecs。
DefaultProfile.addEndpoint("<RegionId>", "<product>", "<Endpoint>");

// 只对当前请求生效配置。例如,调用DescribeRegions接口。
DescribeRegionsRequest regionsRequest = new DescribeRegionsRequest();
// 如设置下述productNetwork参数,则无需手动设置SysEndpoint。
regionsRequest.setSysEndpoint("<Endpoint>");
// 设置网络。productNetwork参数的取值范围:vpc、public。
// vpc为内网调用接入地址选项;public为公网调用API的选项,即默认选项。
regionsRequest.productNetwork = "vpc";
DescribeRegionsResponse regionsResponse = client.getAcsResponse(regionsRequest);

方式二:CLI内网调用API

以接口DescribeRegions为例,调用命令示例如下:

aliyun ecs DescribeRegions --endpoint ecs-vpc.cn-hangzhou.aliyuncs.com
相关文章

API FAQ 2025-04-01 11:58

本文汇总了调用云服务器ECS API接口时的常见问题。 创建多台ECS实例时如何设置有序的实例名称或者主机名称? 如何通过API为ECS实例分配公网IP地址?

API使用规范 2025-04-01 11:58

API 本规范中“API”指:阿里云向您提供的应用程序编程接口(Applicat

API错误码排查思路 2025-04-01 11:58

在使用阿里云ECS API/SDK或CLI进行云服务器操作时,执行可能会出错,会遇到不同的错误码(ErrorCode)。这些错误码通常是因为参数不正确、权限问题或凭证等原因导致的。本文将帮助您通过系统化的方法排查和解决这些错误。 出错的数据格式 调用ECS API出错的数据格式如下。

在Linux系统ECS实例中安装阿里云Python SDK常见问题 2025-04-01 11:58

本文介绍在Linux系统的ECS实例中安装阿里云Python SDK时所遇到的问题及其解决方案。 问题列表 问题1: 使用Python SDK所需的最低Python版本怎么查? 问题2: 安装SDK时提示“Command "python setup.

如何保证幂等性 2025-04-01 11:58

您在调用ECS API时,如果发生请求超时或服务器内部错误,客户端可能会尝试重发请求。您可以在请求中设置ClientToken参数来确保请求完成的次数不超过一次,以此避免多次重试带来重复操作的问题。

如何通过内网调用API 2025-04-01 11:58

如果专有网络VPC类型的ECS实例没有设置公网IP,则无法调用API。本文介绍该类实例如何通过阿里云内网调用API。 背景信息

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号