华为云用户手册

  • URI URI格式: GET /v1.0/{project_id}/databases/{database_name}/tables/{table_name}/users/{user_name} 参数说明 表1 URI 参数 参数名称 是否必选 参数类型 说明 project_id 是 String 项目编号,用于资源隔离。获取方式请参考获取项目ID。 database_name 是 String 被查询的表所在的数据库名称。 table_name 是 String 被查询的表名称。 user_name 是 String 被查询的用户名称。
  • 请求消息 表2 请求参数 参数名称 是否必选 参数类型 说明 roles 是 Array of Strings 角色。 目前只支持:obs_adm、dis_adm、ctable_adm、vpc_netadm、smn_adm、te_admin。 具体含义如下: obs_adm: DLI 获得访问和使用OBS的委托权限。 dis_adm:访问和使用DIS数据源,需要获得访问和使用DIS( 数据接入服务 )DIS Administrator权限。 ctable_adm:访问和使用CloudTable( 表格存储服务 )的CloudTable Administrator权限。 vpc_netadm:使用VPC(虚拟私有云)的VPC Administrator权限。 smn_adm:使用 SMN 消息通知 服务)的SMN Administrator权限。 te_admin:具有Tenant Administrator权限。
  • 响应示例 { "is_success": true, "message": "", "plans": [ { "id": 1, "plan_name": "plan_Aa", "target_cu": 32, "start_hour": 11, "start_minute": 15, "repeat_day": [ "MONDAY", "TUESDAY", "WEDNESDAY", "SUNDAY" ], "activate": true, "last_execute_time": 1593573428857 }, { "id": 6, "plan_name": "plan_Ab", "target_cu": 16, "start_hour": 14, "start_minute": 25, "repeat_day": [ "MONDAY", "TUESDAY", "WEDNESDAY", "SUNDAY", "THURSDAY", "FRIDAY", "SATURDAY" ], "activate": true, "last_execute_time": 1593584829260 } ]}
  • 请求示例 创建DLI用户委托,该委托包含以下权限:访问和使用CloudTable( 表格存储 服务)的CloudTable Administrator权限;使用VPC(虚拟私有云)的VPC Administrator权限;访问和使用DIS数据源(数据接入服务)的DIS Administrator权限;使用SMN(消息通知服务)的SMN Administrator权限;DLI获得访问和使用OBS的委托权限。 { "roles": [ "ctable_adm", "vpc_netadm", "dis_adm", "smn_adm", "obs_adm" ]}
  • URI URI格式: GET /v1/{project_id}/queues/{queue_name}/plans 参数说明 表1 URI参数 名称 是否必选 参数类型 说明 project_id 是 String 项目编号,用于资源隔离。获取方式请参考获取项目ID。 queue_name 是 String 待删除定时扩缩计划的队列名称。名称长度为1~128个字符,多个队列名称使用逗号“,”分隔。
  • 响应消息 表2 响应参数 参数 是否必选 参数类型 说明 is_success 否 Boolean 请求执行是否成功。“true”表示请求执行成功。 message 否 String 系统提示信息,执行成功时,信息可能为空。 plans 否 Array of Objects 定时扩缩容计划信息。具体请参考表3。 表3 plans参数 参数名称 是否必选 参数类型 说明 id 否 Long 扩缩容计划的ID编号。 plan_name 否 String 队列扩缩容计划名称,名称只能包含数字、英文字母和下划线,但不能是纯数字,且不能以下划线开头。 target_cu 否 Integer 队列扩缩容计划CU的目标值。 start_hour 否 Integer 队列扩缩容计划起始小时时间(24小时制)。 start_minute 否 Integer 队列扩缩容计划的起始分钟时间。 repeat_day 是 Array of strings 定时扩缩容计划的重复周期,可以选择周一到周日的某一天、某几天、或者不选择。如果不选择,则会在当前时间后的start_hour:start_minute时间点执行扩缩容计划。例如: "repeat_day": ["MONDAY", "TUESDAY", "WEDNESDAY","SUNDAY"] valid_date_begin 否 Long 有效期开始时间(13位时间戳)。 valid_date_end 否 Long 有效期结束时间(13位时间戳)。 activate 否 Boolean 当前设置的扩缩容计划是否激活,默认为“true”,表示激活。 last_execute_time 否 Long 当前扩缩容计划最近一次执行的时间。
  • 响应示例 作业类型为:flink_jar_job,参考响应样例如下: { "is_success": "true", "message": "作业详情查询成功", "job_detail": { "job_id": 104, "user_id": "011c99a26ae84a1bb963a75e7637d3fd", "queue_name": "flinktest", "project_id": "330e068af1334c9782f4226acc00a2e2", "name": "jptest", "desc": "", "sql_body": "", "run_mode": "exclusive_cluster", "job_type": "flink_jar_job", "job_config": { "checkpoint_enabled": false, "checkpoint_interval": 10, "checkpoint_mode": "exactly_once", "log_enabled": false, "obs_bucket": null, "root_id": -1, "edge_group_ids": null, "graph_editor_enabled": false, "graph_editor_data": "", "manager_cu_number": 1, "executor_number": null, "executor_cu_number": null, "cu_number": 2, "parallel_number": 1, "smn_topic": null, "restart_when_exception": false, "idle_state_retention": 3600, "config_url": null, "udf_jar_url": null, "dirty_data_strategy": null, "entrypoint": "FemaleInfoCollection.jar", "dependency_jars": [ "FemaleInfoCollection.jar", "ObsBatchTest.jar" ], "dependency_files": [ "FemaleInfoCollection.jar", "ReadFromResource" ] }, "main_class": null, "entrypoint_args": null, "execution_graph": null, "status": "job_init", "status_desc": "", "create_time": 1578466221525, "update_time": 1578467395713, "start_time": null }} 作业类型为:flink_opensource_sql_job,参考响应样例如下: { "is_success": "true", "message": "The job information query succeeds.", "job_detail": { "job_type": "flink_opensource_sql_job", "status_desc": "", "create_time": 1637632872828, "sql_body": "xxx", "savepoint_path": null, "main_class": null, "queue_name": "xie_container_general", "execution_graph": "xxx", "start_time": 1638433497621, "update_time": 1638449337993, "job_config": { "checkpoint_enabled": true, "checkpoint_interval": 600, "checkpoint_mode": "exactly_once", "log_enabled": true, "obs_bucket": "dli-test", "root_id": -1, "edge_group_ids": null, "graph_editor_enabled": false, "graph_editor_data": "", "manager_cu_number": 1, "executor_number": null, "executor_cu_number": null, "cu_number": 2, "parallel_number": 3, "smn_topic": "", "restart_when_exception": true, "resume_checkpoint": true, "resume_max_num": -1, "checkpoint_path": null, "idle_state_retention": 3600, "config_url": null, "udf_jar_url": "test/flink_test-1.0-SNAPSHOT-jar-with-dependencies.jar", "dirty_data_strategy": "0", "entrypoint": "test/flink_test-1.0-SNAPSHOT-jar-with-dependencies.jar", "dependency_jars": null, "dependency_files": null, "tm_cus": 1, "tm_slot_num": 3, "image": null, "feature": null, "flink_version": null, "operator_config": "xxx", "static_estimator_config": "xxx", "runtime_config": null }, "user_id": "xxx", "project_id": "xxx", "run_mode": "exclusive_cluster", "job_id": 90634, "name": "test_guoquan", "desc": "", "entrypoint_args": null, "status": "job_cancel_success" }}
  • 响应消息 表2 响应参数说明 参数名称 是否必选 参数类型 说明 is_success 否 String 执行请求是否成功。“true”表示请求执行成功。 message 否 String 系统提示信息,执行成功时,信息可能为空。 job_detail 否 Object 作业详情。请参见表3。 表3 job_detail参数说明 参数名称 是否必选 参数类型 说明 job_id 否 Long 作业ID。 name 否 String 作业名称。长度限制:0-57个字符。 desc 否 String 作业描述。长度限制:0-512个字符。 job_type 否 String 作业类型。 flink_sql_job:flink sql作业 flink_opensource_sql_job:flink opensource sql作业 flink_sql_edge_job:flink sql边缘作业 flink_jar_job:flink自定义作业 status 否 String 作业状态。 作业的状态如下: job_init:草稿 job_submitting:提交中 job_submit_fail:提交失败 job_running:运行中(开始计费,提交作业后,返回正常结果) job_running_exception:运行异常(停止计费。作业发生运行时异常,停止运行作业) job_downloading:下载中 job_idle:空闲 job_canceling:停止中 job_cancel_success:已停止 job_cancel_fail:停止失败 job_savepointing:保存点创建中 job_arrearage_stopped:因欠费被停止(结束计费。用户账户欠费,作业停止) job_arrearage_recovering:欠费作业恢复中(用户账户欠费,账户充值,作业恢复中) job_finish:已完成 status_desc 否 String 作业状态描述。 create_time 否 Long 作业创建时间。 start_time 否 Long 作业启动时间。 user_id 否 String 作业所属用户标识。 queue_name 否 String 队列名称。长度限制:1-128个字符。 project_id 否 String 作业所属项目标识。 sql_body 否 String Stream SQL语句。 savepoint_path 否 String 手动产生的Checkpoint的保存路径。 run_mode 否 String 作业运行模式。 shared_cluster:共享 exclusive_cluster:独享 edge_node:边缘节点 job_config 否 Object 作业配置, 具体参数说明请参见表4。 main_class 否 String jar包主类。例如,org.apache.spark.examples.streaming.JavaQueueStream entrypoint_args 否 String jar包作业运行参数,多个参数之间空格分隔。 execution_graph 否 String 作业执行计划。 update_time 否 Long 作业更新时间。 user_name 否 String 用户名,当“show_detail”为“false”时独有。 duration 否 Long 作业运行时长。 单位ms,“show_detail”为“false”时独有。 root_id 否 Long 父作业ID。“show_detail”为“false”时独有。 graph_editor_enabled 否 Boolean 作业的流图是否可编辑。“true”表示作业的流图可以编辑,“false”表示作业的流图不可以编辑。 has_savepoint 否 Boolean 作业是否有保存点。“true”表示作业有保存点,“false”表示作业没有保存点。 edge_group_ids 否 Array of Strings 边缘计算组ID列表。多个ID以逗号分隔。 restart_times 否 Integer 重启次数。 表4 job_config参数说明 参数名称 是否必选 参数类型 说明 checkpoint_enabled 否 Boolean 是否开启作业自动快照功能。 true:开启 false:关闭 默认为“false”。 checkpoint_interval 否 Integer 快照时间间隔。 单位为秒,默认值为“10”。 checkpoint_mode 否 String 快照模式,。两种可选: exactly_once:数据只被消费一次。 at_least_once:数据至少被消费一次。 默认值为“exactly_once”。 log_enabled 否 Boolean 是否启用日志存储。默认为“false”。 obs_bucket 否 String OBS桶名。 root_id 否 Integer 父作业ID。 edge_group_ids 否 Array of Strings 边缘计算组ID列表。多个ID以逗号分隔。 manager_cu_number 否 Integer 管理单元CU数。默认为“1”。 graph_editor_enabled 否 Boolean 流图编辑开关。默认为“false”。 graph_editor_data 否 String 流图编辑数据。默认为null。 executor_number 否 Integer 作业使用计算节点个数。 executor_cu_number 否 Integer 计算节点cu数。 cu_number 否 Integer 用户为作业选择的CU数量。 “show_detail”为“true”时独有。 最小值:2 最大值:400 默认为“2”。 parallel_number 否 Integer 用户设置的作业并行数。 “show_detail”为“true”时独有。 最小值:1 最大值:2000 默认为“1”。 smn_topic 否 String SMN主题名。当作业异常时,向该SMN主题推送告警信息。 restart_when_exception 否 Boolean 是否开启异常重启功能。 resume_checkpoint 否 Boolean 异常自动重启时,是否从最新checkpoint恢复。默认值为“false”。 resume_max_num 否 Integer 异常重试最大次数。-1代表无限。 checkpoint_path 否 String 检查点保存路径。 idle_state_retention 否 Integer 空闲状态过期周期。 config_url 否 String 用户上传的config包OBS路径。 udf_jar_url 否 String 用户已上传到DLI资源管理系统的程序包名,用户sql作业的udf jar通过该参数传入。 dirty_data_strategy 否 String 作业脏数据策略。 “2:obsDir”:保存,obsDir表示脏数据存储路径。 “1”:抛出异常。 “0”:忽略。 entrypoint 否 String 用户已上传到DLI资源管理系统的程序包名,用户自定义作业主类所在的jar包。 dependency_jars 否 Array of Strings 用户已上传到DLI资源管理系统的程序包名,用户自定义作业的其他依赖包。 dependency_files 否 Array of Strings 用户已上传到DLI资源管理系统的资源包名,用户自定义作业的依赖文件。 tm_cus 否 int 单TM所占CU数。 tm_slot_num 否 int 单TM Slot数。 image 否 String 自定义镜像。格式为:组织名/镜像名:镜像版本。 当用户设置“feature”为“custom”时,该参数生效。用户可通过与“feature”参数配合使用,指定作业运行使用自定义的Flink镜像。关于如何使用自定义镜像,请参考《 数据湖探索 用户指南》。 feature 否 String 自定义作业特性。表示用户作业使用的Flink镜像类型。 basic:表示使用DLI提供的基础Flink镜像。 custom:表示使用用户自定义的Flink镜像。 flink_version 否 String Flink版本。当用户设置“feature”为“basic”时,该参数生效。用户可通过与“feature”参数配合使用,指定作业运行使用的DLI基础Flink镜像的版本。 operator_config 否 String 各算子并行度参数,以json的形式展示各算子id和并行度。 static_estimator_config 否 String 静态流图资源预估参数,以json的形式展示。 runtime_config 否 String Flink作业运行时自定义优化参数。 real_cu_number 否 Integer 实际使用的CU数。默认值为“0”,表示此时以“cu_number”的值为准。
  • URI GET /v3/{project_id}/{resource_type}/tags 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号,用于资源隔离。获取方式请参考获取项目ID。 resource_type 是 String 资源类型。 dli_queue:队列 dli_elastic_resource_pool:弹性资源池 dli_enhanced_datasource:增强型跨源连接 dli_database:数据库 dli_package_resource:资源包(不支持指定有Module ID的内置资源包) dli_flink_job:Flink作业
  • 响应示例 { "tags": [ { "key": "key1", "values": [ "value1", "value2"] }, { "key": "key2", "values": [ "value1", "value2"] } ]}
  • AK/SK认证 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK/SK签名认证方式仅支持消息体大小为12M以内的请求,12M以上的请求请使用Token认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。 详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token可通过调用获取用户Token接口获取,调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } }} 获取Token 后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 123 GET https://iam.cn-north-1.myhuaweicloud.com/v3/auth/projectsContent-Type: application/jsonX-Auth-Token: ABCDEFJ....
  • 响应示例 { "is_success": true, "message": "", "privileges": [ { "is_admin": false, "object": "databases.dsstest.tables.csv_par_table", "privileges": [ "SELECT" ], "user_name": "tent2" }, { "is_admin": true, "object": "databases.dsstest.tables.csv_par_table", "privileges": [ "ALL" ], "user_name": "tent4" } ]} 调用API出错后,将不会返回上述结果,而是返回错误码和错误信息,详细介绍请参见错误码。
  • URI URI格式: GET /v1.0/{project_id}/databases/{database_name}/tables/{table_name}/users 参数说明 表1 URI 参数 参数名称 是否必选 说明 project_id 是 项目编号,用于资源隔离。获取方式请参考获取项目ID。 database_name 是 被查询的表所在的数据库名称。 table_name 是 被查询的表名称。
  • 响应参数 表2 响应参数 参数 参数类型 说明 is_success Boolean 请求执行是否成功。“true”表示请求执行成功。 message String 系统提示信息,执行成功时,信息可能为空。 执行失败时,用于显示执行失败的原因。 sqls Array of Object 样例模板信息,具体参数说明请参见表3。 sqlCount Integer 样例模板个数。 表3 sqls参数说明 参数 参数类型 说明 lang String 语言。 name String 样例模板名称。 sql String 样例模板内容。 description String 样例模板描述。 group String 样例模板分组。
  • 响应参数 状态码: 200 表3 响应Body参数 参数名称 参数类型 说明 is_success Boolean 执行请求是否成功。“true”表示请求执行成功。 message String 系统提示信息,执行成功时,信息可能为空。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述信息。
  • 终端节点 终端节点(Endpoint)即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点中查询所有服务的终端节点。 数据湖 探索的终端节点如下表所示,请您根据业务需要选择对应区域的终端节点。 表1 数据湖探索的终端节点 区 域名 称 区域 终端节点(Endpoint) 华北-北京四 cn-north-4 dli.cn-north-4.myhuaweicloud.com 华北-北京一 cn-north-1 dli.cn-north-1.myhuaweicloud.com 华北-乌兰察布一 cn-north-9 dli.cn-north-9.myhuaweicloud.com 华东-上海二 cn-east-2 dli.cn-east-2.myhuaweicloud.com 华东-上海一 cn-east-3 dli.cn-east-3.myhuaweicloud.com 华南-广州 cn-south-1 dli.cn-south-1.myhuaweicloud.com 西南-贵阳一 cn-southwest-2 dli.cn-southwest-2.myhuaweicloud.com 亚太-曼谷 ap-southeast-2 dli.ap-southeast-2.myhuaweicloud.com 中国-香港 ap-southeast-1 dli.ap-southeast-1.myhuaweicloud.com 亚太-新加坡 ap-southeast-3 dli.ap-southeast-3.myhuaweicloud.com 父主题: API使用前必读
  • 请求消息 创建集群除公共请求消息头参数以外,还有特殊的请求消息头参数,具体如表2所示。 表2 Header说明 名称 是否必选 说明 X-Auth-Token 是 从 IAM 服务获取的用户Token。 Accept 是 默认值application/json。 Content-Type 是 指定类型为application/json。 charset 是 指定编码格式为utf8。 请求参数如表3所示。 表3 请求参数说明 参数 是否必选 参数类型 说明 cluster_name 是 String 新建的集群名称,名称只能包含数字、英文字母和下划线,但不能是纯数字,且不能以下划线开头。 description 否 String 集群的描述信息。 cu_count 是 Integer 与集群绑定的计算单元个数, 同时是计费的单元。可选择16CU,64CU和256CU三种规格,如果需要更大配额,请联系DLI服务管理员。 cidr_in_vpc 否 String vpc的网段。 cidr_in_mgntsubnet 否 String 管理子网的网段。 cidr_in_subnet 否 String 特殊子网网段。
  • 示例 请求样例: None 成功响应样例: { "create_time": 1508143955000, "cu_count": 16, "description": "test", "owner": "tenant1", "cluster_name": "cluster1", "status": "AVAILABLE", "resource_mode": 0 } 调用接口出错后,将不会返回上述结果,而是返回错误码和错误信息,详细介绍请参见错误码。
  • 响应消息 返回码 成功返回200。 响应参数 响应参数如表2所示。 表2 响应参数说明 参数 是否必选 参数类型 说明 create_time 是 Long 创建集群的时间。是单位为“毫秒”的时间戳。 description 否 String 集群的描述信息。 cu_count 是 Integer 与集群绑定的计算单元个数。 owner 是 String 创建集群的用户。 cluster_name 是 String 集群名称。 status 是 String 具体集群状态信息可参见表3。 resource_mode 是 Integer 集群类型。 0:共享集群 1:专属集群 表3 集群状态说明 名称 说明 CREATING 集群正在创建中,当前不可用。 AVAILABLE 集群可用。 SUSPENDED 由于长时间未使用,集群当前处于挂起状态,可通过创建批处理作业接口,重新激活集群。 RECOVERING 集群处于挂起恢复状态,当状态变为AVAILABLE时可再次使用。
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。 响应示例如下,例如DLI服务部署的区域为“cn-north-4”,相应消息体中查找“name”为“cn-north-4”,其中projects下的“id”即为项目ID。
  • 请求消息头 附加请求消息头字段,如指定的URI和HTTP方法所要求的字段。例如,定义消息体类型的请求消息头“Content-Type”,请求鉴权信息等。 详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 参数 说明 是否必选 示例 Host 请求的服务器信息,从服务API的URL中获取。值为hostname[:port]。端口缺省时使用默认的端口,https的默认端口为443。 否 使用AK/SK认证时必选。 code.test.com or code.test.com:443 Content-Type 消息体的类型(格式),默认取值为“application/json”,有其他取值时会在具体接口中专门说明。 是 application/json Content-Length 请求body长度,单位为Byte。 POST/PUT请求必填。 GET不能包含。 3495 X-Project-ID project id,项目编号。在多项目场景中使用,用于不同项目获取token。 否 e9993fc787d94b6c886cbaa340f9c0f4 X-Auth-Token 用户Token。 IAM用户Token也就是调用“获取用户Token”接口的响应值,该接口是唯一不需要认证的接口。 使用Token方式认证时必选 注:以下仅为Token示例片段。 MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ Authorization 签名认证信息。该值来源于请求签名结果。 使用AK/SK认证时必选。 - X-Sdk-Date 请求的发生时间,格式为(YYYYMMDD'T'HHMMSS'Z')。 取值为当前系统的GMT时间。 使用AK/SK认证时必选。 20150907T101459Z X-Language 请求语言。 否 en-us API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 例如,对于IAM获取用户Token接口,由于不需要认证,所以只添加“Content-Type”即可,添加消息头后的请求如下所示。 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokensContent-Type: application/json
  • 请求方法 HTTP请求方法(也称为操作或动词),可告知服务正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在获取用户Token的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 例如,对于IAM获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称,例如cn-north-1,可以从地区和终端节点中获取。 scope参数定义了Token的作用域,下面示例中IAM获取的Token仅能访问project下的资源。您还可以设置Token的作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见IAM获取用户Token。 1 2 3 4 5 6 7 8 91011121314151617181920212223242526 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokensContent-Type: application/json{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxxxxxxxxxxxx" } } }} 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于IAM获取用户Token接口,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求URI 请求URI由如下部分组成。 {URI-scheme} :// {Endpoint} / {resource-path} ? {query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器域名或IP。 不同服务不同区域的Endpoint不同,您可以从地区和终端节点中查询所有服务的终端节点。 例如IAM服务在“华北-北京四”区域的Endpoint为“iam.cn-north-4.myhuaweicloud.com”。 resource-path 资源路径,即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“?limit=10”,表示查询不超过10条数据。 例如,您需要获取IAM在“华北-北京一”区域的Token,则需使用“华北-北京一”区域的Endpoint(iam.cn-north-1.myhuaweicloud.com),并在获取用户Token的URI部分找到resource-path(/v3/auth/tokens),拼接起来如下所示。 https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也是相同,所以简洁起见将这两部分省略。
  • URI URI格式: GET /v2.0/{project_id}/batches/{batch_id}/log 参数说明 表1 URI参数 参数名称 是否必选 参数类型 说明 project_id 是 String 项目编号,用于资源隔离。获取方式请参考获取项目ID。 batch_id 是 String 批处理作业的ID。 表2 请求参数说明 参数名称 是否必选 参数类型 说明 from 否 Integer 起始日志的行号,默认显示最后100行日志。如果日志不足100行,从0行开始显示。 size 否 Integer 查询日志的数量。 type 否 String 当“type”为“driver”时,输出Spark Driver日志。 index 否 Integer 当提交的作业进行重试时,会有多个driver日志。“index”用于指定driver日志的索引号,默认为“0”。需要与“type”参数一起使用。如果只指定“index”,则“type”默认为“driver”。
  • 状态码 状态码如表1所示。 表1 状态码 状态码 编码 状态码说明 100 Continue 继续请求。 这个临时响应用来通知客户端,它的部分请求已经被服务器接收,且仍未被拒绝。 101 Switching Protocols 切换协议。只能切换到更高级的协议。 例如,切换到HTTP的新版本协议。 200 Success 服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。 201 Created 请求成功且服务器已创建了新的资源。 202 Accepted 已经接受请求,但未处理完成。 203 Non-Authoritative Information 非授权信息,请求成功。 204 NoContent 请求完全成功,同时HTTP响应不包含响应体。 在响应OPTIONS方法的HTTP请求时返回此状态码。 205 Reset Content 重置内容,服务器处理成功。 206 Partial Content 服务器成功处理了部分GET请求。 300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。 301 Moved Permanently 永久移动,请求的资源已被永久的移动到新的URI,返回信息会包括新的URI。 302 Found 资源被临时移动。 303 See Other 查看其它地址。 使用GET和POST请求查看。 304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。 305 Use Proxy 所请求的资源必须通过代理访问。 306 Unused 已经被废弃的HTTP状态码。 400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 402 Payment Required 保留请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。 405 MethodNotAllowed 请求中带有该资源不支持的方法。 建议直接修改该请求,不要重试该请求。 406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求。 407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权。 408 Request Time-out 服务器等候请求时发生超时。 客户端可以随时再次提交该请求而无需进行任何更改。 409 Conflict 服务器在完成请求时发生冲突。 返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。 410 Gone 客户端请求的资源已经不存在。 返回该状态码,表明请求的资源已被永久删除。 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息。 412 Precondition Failed 未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。 414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理。 415 Unsupported Media Type 服务器无法处理请求附带的媒体格式。 416 Requested range not satisfiable 客户端请求的范围无效。 417 Expectation Failed 服务器无法满足Expect的请求头信息。 422 UnprocessableEntity 请求格式正确,但是由于含有语义错误,无法响应。 429 TooManyRequests 表明请求超出了客户端访问频率的限制或者服务端接收到多于它能处理的请求。建议客户端读取相应的Retry-After首部,然后等待该首部指出的时间后再重试。 500 InternalServerError 系统异常,表明服务端能被请求访问到,但是不能理解用户的请求。 501 Not Implemented 服务器不支持请求的功能,无法完成请求。 502 Bad Gateway 充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。 503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重试该请求。 504 ServerTimeout 请求在给定的时间内无法完成。客户端仅在为请求指定超时(Timeout)参数时会得到该响应。 505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理。 父主题: 公共参数
  • 响应消息体 响应消息体通常以结构化格式返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于获取用户Token接口,返回如下消息体。为篇幅起见,这里只展示部分内容。 1 2 3 4 5 6 7 8 9101112 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "az-01",...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 1234 { "error_msg": "The format of message is error", "error_code": "AS.0001"} 其中,error_code表示错误码,error_msg表示错误描述信息。
  • URI GET /v3/{project_id}/elastic-resource-pools/{elastic_resource_pool_name}/scale-records 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号,用于资源隔离。获取方式请参考获取项目ID。 elastic_resource_pool_name 是 String 弹性资源池名称。 长度限制:1~128个字符。 表2 Query参数 参数 是否必选 参数类型 描述 start_time 否 Long start_time用于查询扩缩容历史的开始时间,该时间点需大于当前时间点减30天,必须小于end_time 。时间格式为unix时间戳,单位:毫秒。 若start_time为空,则查询end_time前七天到end_time的数据(end_time最大不能大于当前时间30天)。 查询当前时间点前15天到当前时间点的数据(start_time和end_time同时为空)。 end_time 否 Long end_time用于查询扩缩容历史的结束时间,该时间点不能小于开始时间,不能大于当前时间。时间格式为unix时间戳,单位:毫秒。 若end_time为空,则查询start_time到当前时间点的数据。 查询当前时间点前15天到当前时间的数据(start_time和end_time同时为空)。 status 否 String 弹性资源池扩缩容的状态。 枚举值: success fail offset 否 Integer 偏移量。 最小值:0 limit 否 Integer 当前分页条数。 最小值:0 最大值:100
  • 响应参数 表3 响应Body参数 参数 参数类型 描述 count Integer 返回数组长度。 items Array of arrays 数组中返回的数据。详细说明请参考表4。 表4 items参数 参数 参数类型 描述 max_cu Integer 最大CU。 min_cu Integer 最小CU。 current_cu Integer 扩缩容后CU。 origin_cu Integer 扩缩容前CU。 target_cu Integer 扩缩容预期CU record_time Long 操作完成时间。 status String 扩缩容成功或者失败的状态。 fail_reason String 失败原因。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全