
# Rest Client
#### 功能
通过Rest Client节点执行一个华为云内的RESTful请求。该节点可执行各种服务请求，支持GET、POST、PUT、DELETE请求类型。
Rest Client算子的具体使用教程，请参见[获取Rest Client算子返回值教程](https://support.huaweicloud.com/usermanual-dataartsstudio/dataartsstudio_01_0581.html)。
![](https://support.huaweicloud.com/usermanual-dataartsstudio/public_sys-resources/note_3.0-zh-cn.png)
当由于网络限制，Rest Client某些API无法调通时，可以尝试使用Shell脚本进行API调用。您需要拥有弹性云服务器ECS，并确保ECS主机和待调用的API之间网络可通，然后在DataArts Studio创建主机连接，通过Shell脚本使用CURL命令进行API调用。
Rest Client算子目前不支持大量的response返回体，返回体的大小目前代码限制30M。
#### 参数
用户可参考[表1]，[表2]和[表3]配置Rest Client节点的参数。
 表1属性参数 
| 参数             | 是否必选 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| 节点名称           | 是    | 节点名称，可以包含中文、英文字母、数字、"_"、"-"、"/"、"\<"、"\>"等各类特殊字符，长度为1～128个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| 代理集群名称         | 是    | 选择CDM集群名称，CDM集群提供代理连接的功能。 如果选择的CDM集群与第三方服务处于同一个VPC下，那么Rest Client可以调用租户面的API。 说明： 代理集群可选多个，其中只要有一个集群可以正常连接即可。如果有多个集群可正常连接，则数据开发后台会随机选择一个用于连接。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| URL地址          | 是    | 填写请求主机的IP或域名地址，以及端口号。例如：https://192.168.10.10:8080 URL地址长度不能超过256个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| HTTP方法         | 是    | 选择请求的类型： - GET  - POST  - PUT  - DELETE                                                                                             |
| 接口认证方式         | 是    | - IAM认证：接口只允许云用户访问。DataArts Studio服务给接口发送消息的时候，会在请求消息头中带上当前用户的认证信息。  - 无认证：接口不需要身份认证                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| 请求头            | 否    | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0000001074310136.png)，添加请求消息头，参数说明如下： - 参数名称 选择参数的名称，选项为"Content-Type"、"Accept-Language"。   - 参数值 填写参数的值。    说明： 请勿输入敏感信息，例如ak、sk、password、authorization等信息。 |
| URL参数          | 否    | 填写URL参数，格式为"参数=值"形式的字符串，字符串间以换行符分隔。当"HTTP方法"为"GET"时，显示该配置项。参数说明如下： - 参数 只支持英文字母、数字、"-"、"_"，最大长度为32字符。   - 值 只支持英文字母、数字、"-"、"_"、"#"、"{"和"}"，最大长度为64字符。                       |
| 请求消息体          | 是    | 填写Json格式的请求消息体。当"HTTP方法"为"POST"、"PUT"时，显示该配置项。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| 是否需要判断返回值      | 是    | 设置是否判断返回消息的值和预期的一致。当"HTTP方法"为"GET"时，显示该配置项。 - YES：检查返回消息中的值是否和预期的一致。  - NO：不检查，请求返回200响应码（表示节点执行成功）。                                                                                                                                                                                                                                                                                                 |
| 返回值字段路径        | 是    | 填写Json响应消息中某个属性的路径（下称：Json属性路径），每个Rest Client节点都只能配置一个属性的路径。当"是否需要判断返回值"为"YES"时，显示该配置项。 例如，返回结果为： ``` { "param1": "aaaa", "inner": { "inner": { "param4": 2014247437 }, "param3": "cccc" }, "status": 200, "param2": "bbbb" } ``` 其中"param4"属性的路径为"inner.inner.param4"。 您也可以参考[获取Rest Client算子返回值教程](https://support.huaweicloud.com/bestpractice-dataartsstudio/dataartsstudio_05_0104.html)，获取本参数的配置案例。                                                                                                                                                                                                |
| 请求成功标志位        | 是    | 填写请求成功标志位，如果响应消息的返回值与请求成功标志位中的某一个匹配，表示节点执行成功。当"是否需要判断返回值"为"YES"时，显示该配置项。 请求成功标志位只支持英文字母、数字、"-"、"_"、"$"、"{"、"}"，多个值使用";"分隔。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| 请求失败标志位        | 否    | 填写请求失败标志位，如果响应消息的返回值与请求失败标志位中的某一个匹配，表示节点执行失败。当"是否需要判断返回值"为"YES"时，显示该配置项。 请求失败标志位只支持英文字母、数字、"-"、"_"、"$"、"{"、"}"，多个值使用";"分隔。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 请求间隔时间（秒）      | 是    | 如果响应消息的返回值与请求成功标志位不匹配，将每隔一段时间查询一次，直到响应消息的返回值与请求成功标志位一致。节点执行的超时时间默认为1小时，如果1小时内查询的结果始终为不匹配，那么节点的状态将置为失败。当"是否需要判断返回值"为"YES"时，显示该配置项。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| 响应消息体解析为传递参数定义 | 否    | 设置作业变量与Json属性路径的对应关系，参数间以换行符分隔。 例如：var4=inner.inner.param4 其中，"var4"为作业变量，作业变量只支持英文字母、数字，最大长度为64字符；"inner.inner.param4"为Json属性路径。 仅该节点的后续节点引用该参数才会生效，引用该参数时，格式为：${var4}。 说明： 参数名（例如var4）作为作业变量，在本作业有唯一性约束。                                                                                                                                                                                                                                                                                      |
   
 表2高级参数 
| 参数               | 是否必选 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| 节点执行的最长时间        | 是    | 设置节点执行的超时时间，如果节点配置了重试，在超时时间内未执行完成，该节点将会再次重试。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| 失败重试             | 是    | 节点执行失败后，是否重新执行节点。 - 是：重新执行节点，请配置以下参数。 - 超时重试  - 最大重试次数  - 重试间隔时间（秒）    - 否：默认值，不重新执行节点。 说明： 如果作业节点配置了重试，并且配置了超时时间，该节点执行超时后，系统支持再重试。 当节点运行超时导致的失败不会重试时，您可前往"默认项设置"修改此策略。 当"失败重试"配置为"是"才显示"超时重试"。    |
| 当前节点失败后，后续节点处理策略 | 是    | 节点执行失败后的操作： - 终止后续节点执行计划：停止后续节点的运行，当前作业实例状态显示为"失败"。  - 终止当前作业执行计划：停止当前作业运行，当前作业实例状态显示为"失败"。  - 继续执行下一节点：忽略当前节点失败，当前作业实例状态显示为"忽略失败"。  - 挂起当前作业执行计划：当前作业实例的状态为运行异常，该节点的后续节点以及依赖于当前作业的后续作业实例都会处于等待运行状态。                                                                                                                                                                                                          |
| 是否空跑             | 否    | 如果勾选了空跑，该节点不会实际执行，将直接返回成功。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| 任务组              | 否    | 选择任务组。任务组配置好后，可以更细粒度地进行当前任务组中的作业节点的并发数控制，比如作业中包含多个节点、补数据、重跑等场景。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   
 表3血缘关系 
| 参数    | 说明                                                                                                                   |
|:---|:---|
| **输入**                                                                                                                      ||
| 新建    | 单击"新建"，在"类型"的下拉选项中选择要新建的类型。可以选择DWS，OBS，CSS，HIVE，CUSTOM和DLI类型。                                                        |
| 确定    | 单击"确认"，保存节点输入功能的参数配置。                                                                                                |
| 取消    | 单击"取消"，取消节点输入功能的参数配置。                                                                                                |
| 编辑    | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079518.png)，修改节点输入功能的参数配置，修改完成后，请保存。 |
| 删除    | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079519.png)，删除节点输入功能的参数配置。           |
| 查看表详情 | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079520.png)，查看节点输入血缘关系创建数据表的详细信息。    |
| **输出**                                                                                                                      ||
| 新建    | 单击"新建"，在"类型"的下拉选项中选择要新建的类型。可以选择DWS，OBS，CSS，HIVE，CUSTOM，CloudTable和DLI类型。                                             |
| 确定    | 单击"确认"，保存节点输出功能的参数配置。                                                                                                |
| 取消    | 单击"取消"，取消节点输出功能的参数配置。                                                                                                |
| 编辑    | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079533.png)，修改节点输出功能的参数配置，修改完成后，请保存。 |
| 删除    | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079534.png)，删除节点输出功能的参数配置。           |
| 查看表详情 | 单击![](https://support.huaweicloud.com/usermanual-dataartsstudio/zh-cn_image_0253079536.png)，查看节点输出血缘关系创建数据表的详细信息。    |
   
