调用方式

1) 请求结构

1.通信协议

支持HTTP或HTTPS协议请求通信。为了获得更高的安全性,推荐使用HTTPS协议发送请求。

2.请求规则

https:// + 请求域名 +请求路径 + ? +最终请求参数串

3、服务地址

目前支持的域名列表为:

地域 域名
华北三 hdinsight.cn-north-3.inspurcloudapi.com

4.请求方法

方法 说明
GET 请求服务器返回指定资源。
PUT 请求服务器更新指定资源。
POST 请求服务器新增资源或执行特殊操作。
DELETE 请求服务器删除指定资源,如删除对象等。
HEAD 请求服务器资源头部。
PATCH 请求服务器更新资源的部分内容。
当资源不存在的时候,PATCH可能会去创建一个新的资源。

5.字符编码

API的请求及返回结果均使用UTF-8字符集进行编码。

2) 签名机制

a) Token认证

详情见iam操作文档

Token认证

b) AK/SK认证

详情见iam操作文档

AK/SK认证

3) 公共参数

通用请求返回值

正常返回
返回值 说明
200 OK 请求成功。
202 任务提交成功,当前系统繁忙,下发的任务会延迟处理。
204 任务提交成功。
异常返回
返回值 说明
300 multiple choices 被请求的资源存在多个可供选择的响应。
400 Bad Request 服务器未能处理请求。
401 Unauthorized 被请求的页面需要用户名和密码。
403 Forbidden 对被请求页面的访问被禁止。
404 Not Found 服务器无法找到被请求的页面。
405 Method Not Allowed 请求中指定的方法不被允许。
406 Not Acceptable 服务器生成的响应无法被客户端所接受。
407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。
408 Request Timeout 请求超出了服务器的等待时间。
409 Conflict 由于冲突,请求无法被完成。
500 Internal Server Error 请求未完成。服务异常。
501 Not Implemented 请求未完成。服务器不支持所请求的功能。
502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。
503 Service Unavailable 请求未完成。系统暂时异常。
504 Gateway Timeout 网关超时。

提交任务类请求结果

响应

API响应统一使用json格式,不允许直接返回数值。

  • 正常响应说明 查询、创建、更新等操作类直接返回实体对象;删除根据Status Code判定是否成功,删除成功无返回,删除失败返回错误消息。

  • 异常响应要素说明

名称 参数类型 说明
error 字典数据结构 提交任务异常是返回的异常信息,详情请参见表1

表1 error数据结构

名称 参数类型 说明
code String 任务异常错误信息编码。
message String 任务异常错误信息描述。
requestId String 请求id。
  • 响应样例

正常响应:

{
    "id": 1270,
    "name": "app-ksrzcjh7",
    "displayName": "测试001",
    "tag": "",
    "namespace": "",
    "desc": "",
    "ownerId": 0,
    "creatorId": 0,
    "creatorName": "admin",
    "ownerGroup": "group-admin",
    "createdTime": "2019-05-14T03:12:30Z",
    "updatedTime": "2019-05-14T03:12:30Z",
    "deletedTime": "0001-01-01T00:00:00Z",
    "appenvSpec": null
}

异常响应:

{
    "code": "300.001001",
    "message": "集群错误: Error with resource [STACK], error: [ERROR: duplicate key value violates unique constraint \"uk_stack_account_name\"]",
    "requestId": "a49cc783-445e-48f9-a42d-e283786fa488"
}
错误码与错误信息
错误代码 错误信息 Http状态码 说明
300.001001 集群错误:{0} 500
300.001400 集群创建请求校验失败:{0} 500
300.002001 集群资源获取失败:{0} 500