Foundry 数据连接 Rest 响应作为行

Foundry Data Connection Rest responses as rows

我正在尝试实现一个非常简单的单个 get 调用,响应 returns 一些文本,其中包含一堆由换行符分隔的 ID(如单列 csv)。我想将每个保存为数据集中的一行。

我知道一般来说,Rest 连接器将每个响应保存为 avro 文件中的新行,这适用于 json 响应,然后可以在代码中解析这些响应。

但是在我的例子中,我只需要将响应保存在 txtcsv 文件中,然后我可以对其应用模式,将每个 ID 放在自己的行中。我怎样才能做到这一点?

默认情况下,数据连接 Rest 连接器会将来自 API 的每个响应作为输出数据集中的一行。如果您知道响应的格式类型,并且它通常会被解析为每行一行(例如 csv),您可以尝试将 outputFileType 设置为正确的格式(未定义默认情况下)。

例如(有关详细信息,请参阅 REST API Plugin 文档):

type: rest-source-adapter2
outputFileType: csv
restCalls:
  - type: magritte-rest-call
    method: GET
    path: '/my/endpoint/file.csv'

如果您不知道格式,或者以上方法无论如何都不起作用,您将需要解析转换中的响应以将其拆分为单独的行,这可以像响应是字符串列,在这种情况下 exploding after splitting 换行 (\n) 可能有用:F.explode(F.split(F.col("response"), r'\n'))