Talend-如何从tRestClient检索响应头

时间:2019-09-12 23:56:41

标签: pagination iteration talend recurly

我正在使用tRestClient从REST API中提取数据,该REST API每页最多返回200个项目。响应头中提供了指向下一页的链接。

如何使用tRestClient访问响应标头?

据我所见,返回的唯一数据位于响应的正文中。

注意:来自邮递员的同一呼叫将验证是否存在一个标有“链接”的响应标头,其中包含必要的数据。

1 个答案:

答案 0 :(得分:2)

我在Talend Community

的帖子中找到了答案

响应头存储在全局变量中,仅当响应主体传递到诸如tLogRow之类的内容时,才实际填充该全局变量(即使响应主体中没有任何内容)。

可以通过以下方式访问全局变量:

((java.util.Map<String,java.util.List<String>>)globalMap.get("tRESTClient_1_HEADERS")).get("NAME_OF_HEADER_FIELD_HERE").get(INDEX_HERE).toString();

其中“ NAME_OF_HEADER_FIELD_HERE”是您感兴趣的特定标头的键(字符串),“ INDEX_HERE”是与该特定标头关联的值列表中特定值的整数索引(从0开始)。

在这种情况下,我们将结果明确转换为字符串,然后将其用于其他地方。