我正在使用tRestClient从REST API中提取数据,该API以每页最多200个项目的页面形式返回数据。响应标头中提供了指向下一页的链接。
如何使用 tRestClient 访问响应标头?
据我所知,返回的唯一数据位于响应正文中。
注意:来自 Postman 的相同调用验证了标记为"链接"的响应标头是否存在,其中包含必要的数据。
我在 Talend 社区的一篇文章中找到了答案
响应标头存储在全局变量中,该变量仅在响应正文传递到 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 开始(。
在这种情况下,我们将结果显式转换为一个字符串,然后在其他地方使用。