计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive

查询迁移任务列表

功能介绍

在设置目的端后,主机迁移服务会自动创建迁移任务,使用该接口可以查询迁移任务列表。

调用方法

请参见如何调用API

URI

GET /v3/tasks

表1 Query参数

参数

是否必选

参数类型

描述

state

String

迁移任务状态

READY:准备就绪

RUNNING:迁移中

SYNCING:同步中

MIGRATE_SUCCESS:迁移成功

MIGRATE_FAIL:迁移失败

ABORTING:中止中

ABORT:中止

DELETING::删除中

SYNC_F_ROLLBACKING:同步失败回滚中

SYNC_F_ROLLBACK_SUCCESS:同步失败回滚成功

枚举值:

  • READY

  • RUNNING

  • SYNCING

  • MIGRATE_SUCCESS

  • MIGRATE_FAIL

  • ABORTING

  • ABORT

  • DELETING

  • SYNC_F_ROLLBACKING

  • SYNC_F_ROLLBACK_SUCCESS

name

String

任务的名称

最小长度:0

最大长度:255

id

String

任务的ID

最小长度:0

最大长度:255

source_server_id

String

源端服务器的ID

最小长度:0

最大长度:255

limit

Integer

每一页记录的任务数量

最小值:0

最大值:200

缺省值:100

offset

Integer

偏移量

最小值:0

最大值:65535

缺省值:0

enterprise_project_id

String

需要查询的企业项目ID

最小长度:0

最大长度:255

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

最小长度:1

最大长度:16384

响应参数

状态码: 200

表3 响应Body参数

参数

参数类型

描述

count

Integer

符合要求的任务数量,不受分页影响

最小值:0

最大值:2147483647

tasks

Array of TasksResponseBody objects

查询到的任务列表

数组长度:0 - 65535

表4 TasksResponseBody

参数

参数类型

描述

id

String

迁移任务ID

最小长度:0

最大长度:255

name

String

任务名称(用户自定义)

最小长度:0

最大长度:255

type

String

任务类型,创建时必选,更新时可选

MIGRATE_FILE:文件级迁移

MIGRATE_BLOCK:块级迁移

最小长度:0

最大长度:255

枚举值:

  • MIGRATE_FILE

  • MIGRATE_BLOCK

os_type

String

操作系统类型,分为WINDOWS和LINUX,创建时必选,更新时可选

最小长度:0

最大长度:255

枚举值:

  • WINDOWS

  • LINUX

state

String

任务状态

最小长度:0

最大长度:255

estimate_complete_time

Long

预估完成时间

最小值:0

最大值:9223372036854775807

create_date

Long

任务创建时间

最小值:0

最大值:9223372036854775807

priority

Integer

进程优先级

0:低

1:标准

2:高

最小值:0

最大值:2

枚举值:

  • 0

  • 1

  • 2

speed_limit

Integer

迁移限速

最小值:0

最大值:65535

migrate_speed

Double

迁移速率,单位:MB/S

最小值:0

最大值:10000

compress_rate

Double

压缩率

最小值:0

最大值:10000

start_target_server

Boolean

迁移完成后是否启动目的端服务器

true:启动

false:停止

缺省值:false

error_json

String

错误信息

最小长度:0

最大长度:1024

total_time

Long

任务总耗时

最小值:0

最大值:9223372036854775807

migration_ip

String

目的端服务器的IP地址。

公网迁移时请填写弹性IP地址

专线迁移时请填写私有IP地址

最小长度:0

最大长度:255

sub_tasks

Array of SubTaskAssociatedWithTask objects

任务关联的子任务信息

数组长度:0 - 65535

source_server

SourceServerAssociatedWithTask object

任务关联的源端信息

enterprise_project_id

String

迁移项目ID

最小长度:0

最大长度:255

target_server

TargetServerAssociatedWithTask object

任务关联的目的端信息

log_collect_status

String

日志收集状态

INIT

TELL_AGENT_TO_COLLECT

WAIT_AGENT_COLLECT_ACK

AGENT_COLLECT_FAIL

AGENT_COLLECT_SUCCESS

WAIT_SERVER_COLLECT

SERVER_COLLECT_FAIL

SERVER_COLLECT_SUCCESS

TELL_AGENT_RESET_ACL

WAIT_AGENT_RESET_ACL_ACK

枚举值:

  • INIT

  • TELL_AGENT_TO_COLLECT

  • WAIT_AGENT_COLLECT_ACK

  • AGENT_COLLECT_FAIL

  • AGENT_COLLECT_SUCCESS

  • WAIT_SERVER_COLLECT

  • SERVER_COLLECT_FAIL

  • SERVER_COLLECT_SUCCESS

  • TELL_AGENT_RESET_ACL

  • WAIT_AGENT_RESET_ACL_ACK

clone_server

CloneServerBrief object

克隆服务器基本信息

syncing

Boolean

是否同步

network_check_info

NetworkCheckInfoRequestBody object

网络检测相关信息

special_config

Array of ConfigBody objects

特殊配置项配置信息

数组长度:0 - 1000

total_cpu_usage

Double

主机的CPU使用率,单位是百分比

最小值:0

最大值:100

agent_cpu_usage

Double

Agent的CPU使用率,单位是百分比

最小值:0

最大值:100

total_mem_usage

Double

主机的内存使用值,单位是MB

最小值:0

最大值:1048576.0

agent_mem_usage

Double

Agent的内存使用值,单位是MB

最小值:0

最大值:1048576.0

total_disk_io

Double

主机的磁盘I/O值,单位是MB/s

最小值:0

最大值:10000.0

agent_disk_io

Double

Agent的磁盘I/O值,单位是MB/s

最小值:0

最大值:10000.0

表5 SubTaskAssociatedWithTask

参数

参数类型

描述

id

Long

子任务ID

最小值:0

最大值:9223372036854775807

name

String

子任务名称

最小长度:0

最大长度:255

progress

Integer

子任务的进度,取值为0-100之间的整数

最小值:0

最大值:100

start_date

Long

子任务开始时间

最小值:0

最大值:9223372036854775807

end_date

Long

子任务结束时间(如果子任务还没有结束,则为空)

最小值:0

最大值:9223372036854775807

process_trace

String

迁移或同步时,具体的迁移详情

最小长度:0

最大长度:2048

表6 SourceServerAssociatedWithTask

参数

参数类型

描述

id

String

源端在SMS数据库中的ID

最小长度:0

最大长度:255

ip

String

源端服务器ip,注册源端时必选,更新非必选

最小长度:0

最大长度:255

name

String

用来区分不同源端服务器的名称

最小长度:0

最大长度:255

os_type

String

源端服务器的OS类型,分为Windows和Linux,注册必选,更新非必选

最小长度:0

最大长度:255

枚举值:

  • WINDOWS

  • LINUX

os_version

String

操作系统版本,注册必选,更新非必选

最小长度:0

最大长度:255

oem_system

Boolean

是否是OEM操作系统(Windows)

state

String

当前源端服务器状态

unavailable:环境校验不通过

waiting:等待

initialize:初始化

replicate:复制

syncing:持续同步

stopping:暂停中

stopped:已暂停

deleting:删除中

error:错误

cloning:等待克隆完成

testing:测试中

finished:启动目的端完成

枚举值:

  • unavailable

  • waiting

  • initialize

  • replicate

  • syncing

  • stopping

  • stopped

  • deleting

  • error

  • cloning

  • testing

  • finished

表7 TargetServerAssociatedWithTask

参数

参数类型

描述

id

String

目的端在SMS数据库中的ID

最小长度:0

最大长度:255

vm_id

String

目的端虚机ID

最小长度:0

最大长度:255

name

String

目的端服务器名称

最小长度:0

最大长度:255

ip

String

目的端服务器IP

最小长度:0

最大长度:255

os_type

String

目的端服务器的OS类型

WINDOWS:WINDOWS系统

LINUX:LINUX系统

最小长度:0

最大长度:255

枚举值:

  • WINDOWS

  • LINUX

os_version

String

操作系统版本

最小长度:0

最大长度:255

表8 CloneServerBrief

参数

参数类型

描述

vm_id

String

克隆服务器ID

最小长度:0

最大长度:255

name

String

克隆虚拟机的名称

最小长度:0

最大长度:255

表9 NetworkCheckInfoRequestBody

参数

参数类型

描述

domain_connectivity

Boolean

域名连通性

destination_connectivity

Boolean

目的端连通性

network_delay

Double

网络时延

最小值:0

最大值:10000.0

network_jitter

Double

网络抖动

最小值:0

最大值:10000

migration_speed

Double

带宽

最小值:0

最大值:10000

loss_percentage

Double

丢包

最小值:0

最大值:100

cpu_usage

Double

CPU占用

最小值:0

最大值:100

mem_usage

Double

内存占用

最小值:0

最大值:100

evaluation_result

String

评估结果

最小长度:6

最大长度:8

表10 ConfigBody

参数

参数类型

描述

config_key

String

配置类型,分为:”EXCLUDE_MIGRATE_PATH","SYNC_EXCLUDE_PATH","ONLY_SYNC_PATH"等

最小长度:0

最大长度:255

config_value

String

具体配置参数字段,保存于数据库,最终在agent端进行解析

最小长度:0

最大长度:1024

config_status

String

描述配置状态的保留字段

最小长度:0

最大长度:255

状态码: 403

表11 响应Body参数

参数

参数类型

描述

error_code

String

错误代码

最小长度:0

最大长度:255

error_msg

String

错误信息

最小长度:0

最大长度:255

encoded_authorization_message

String

加密授权信息

最小长度:0

最大长度:65535

error_param

Array of strings

错误参数

最小长度:0

最大长度:65535

数组长度:1 - 20

details

Array of details objects

详细错误信息

数组长度:1 - 20

表12 details

参数

参数类型

描述

error_code

String

SMS错误代码

最小长度:0

最大长度:65535

error_msg

String

SMS错误信息

最小长度:0

最大长度:65535

请求示例

查询迁移任务列表

GET https://{endpoint}/v3/tasks

响应示例

状态码: 200

查询迁移任务列表成功

{
  "count" : 3,
  "tasks" : [ {
    "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
    "name" : "sms_task_lxxxx11",
    "type" : "MIGRATE_FILE",
    "os_type" : "LINUX",
    "state" : "MIGRATE_SUCCESS",
    "estimate_complete_time" : null,
    "create_date" : 1585139506000,
    "priority" : 1,
    "speed_limit" : 0,
    "migrate_speed" : 0.0,
    "start_target_server" : true,
    "error_json" : "",
    "total_time" : 3878000,
    "migration_ip" : "",
    "source_server" : {
      "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "ip" : "192.168.*.107",
      "name" : "xxx-linux-1",
      "os_type" : "LINUX",
      "os_version" : "CENTOS_7_6_64BIT",
      "oem_system" : false,
      "state" : "AVAILABLE"
    },
    "target_server" : {
      "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "vm_id" : "",
      "name" : "",
      "ip" : null,
      "os_type" : "LINUX",
      "os_version" : null
    },
    "log_collect_status" : "INIT"
  }, {
    "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
    "name" : "sms_task_xxx22",
    "type" : "MIGRATE_BLOCK",
    "os_type" : "WINDOWS",
    "state" : "MIGRATE_SUCCESS",
    "estimate_complete_time" : null,
    "create_date" : 1585138569000,
    "priority" : 1,
    "speed_limit" : 0,
    "migrate_speed" : 0.0,
    "start_target_server" : true,
    "error_json" : "",
    "total_time" : 10824000,
    "migration_ip" : "",
    "source_server" : {
      "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "ip" : "192.168.*.245",
      "name" : "xxx-windows-2",
      "os_type" : "WINDOWS",
      "os_version" : "WINDOWS2012_R2_64BIT",
      "oem_system" : false,
      "state" : "AVAILABLE"
    },
    "target_server" : {
      "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "vm_id" : "",
      "name" : "",
      "ip" : null,
      "os_type" : "WINDOWS",
      "os_version" : "WINDOWS2012_R2_64BIT"
    },
    "log_collect_status" : "INIT"
  }, {
    "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
    "name" : "sms_task_leddesktop",
    "type" : "MIGRATE_BLOCK",
    "os_type" : "WINDOWS",
    "state" : "MIGRATE_SUCCESS",
    "estimate_complete_time" : null,
    "create_date" : 1566130392000,
    "priority" : 1,
    "speed_limit" : 200,
    "migrate_speed" : 0.0,
    "start_target_server" : true,
    "error_json" : "",
    "total_time" : 882000,
    "migration_ip" : "192.168.1.201",
    "source_server" : null,
    "target_server" : {
      "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "vm_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001",
      "name" : "xxx-sms-target",
      "ip" : null,
      "os_type" : "WINDOWS",
      "os_version" : "WINDOWS2008_R2_64BIT"
    },
    "log_collect_status" : "INIT"
  } ]
}

状态码: 403

鉴权失败

{
  "error_code" : "SMS.9004",
  "error_msg" : "The current account does not have the permission to execute policy You do not have permission to perform action XXX on resource XXX.",
  "encoded_authorization_message" : "XXXXXX",
  "error_param" : [ "You do not have permission to perform action XXX on resource XXX." ],
  "details" : [ {
    "error_code" : "SMS.9004",
    "error_msg" : "You do not have permission to perform action XXX on resource XXX."
  } ]
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.GlobalCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.sms.v3.region.SmsRegion;
import com.huaweicloud.sdk.sms.v3.*;
import com.huaweicloud.sdk.sms.v3.model.*;


public class ListTasksSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new GlobalCredentials()
                .withAk(ak)
                .withSk(sk);

        SmsClient client = SmsClient.newBuilder()
                .withCredential(auth)
                .withRegion(SmsRegion.valueOf("<YOUR REGION>"))
                .build();
        ListTasksRequest request = new ListTasksRequest();
        try {
            ListTasksResponse response = client.listTasks(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import GlobalCredentials
from huaweicloudsdksms.v3.region.sms_region import SmsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdksms.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = GlobalCredentials(ak, sk)

    client = SmsClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(SmsRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListTasksRequest()
        response = client.list_tasks(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global"
    sms "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := global.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := sms.NewSmsClient(
        sms.SmsClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListTasksRequest{}
	response, err := client.ListTasks(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.GlobalCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.sms.v3.region.SmsRegion;
import com.huaweicloud.sdk.sms.v3.*;
import com.huaweicloud.sdk.sms.v3.model.*;


public class ListTasksSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new GlobalCredentials()
                .withAk(ak)
                .withSk(sk);

        SmsClient client = SmsClient.newBuilder()
                .withCredential(auth)
                .withRegion(SmsRegion.valueOf("<YOUR REGION>"))
                .build();
        ListTasksRequest request = new ListTasksRequest();
        try {
            ListTasksResponse response = client.listTasks(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import GlobalCredentials
from huaweicloudsdksms.v3.region.sms_region import SmsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdksms.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = GlobalCredentials(ak, sk)

    client = SmsClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(SmsRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListTasksRequest()
        response = client.list_tasks(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global"
    sms "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/sms/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := global.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := sms.NewSmsClient(
        sms.SmsClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListTasksRequest{}
	response, err := client.ListTasks(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

查询迁移任务列表成功

403

鉴权失败

错误码

请参见错误码

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容