配置API输入组件

配置API输入组件后,可以读取API数据源中的数据至Dataphin,进行数据集成与数据开发。本文为您介绍如何配置API输入组件。

前提条件

  • 已创建API数据源。具体操作,请参见创建API数据源

  • 进行API输入组件属性配置的账号,需具备该数据源的同步读权限。如果没有权限,则需要申请数据源权限。具体操作,请参见申请数据源权限

操作步骤

  1. Dataphin首页顶部菜单栏,选择研发 > 数据集成

  2. 在集成页面顶部菜单栏选择项目(Dev-Prod模式需要选择环境)。

  3. 在左侧导航栏中单击离线集成,在离线集成列表中单击需要开发的离线管道,打开该离线管道的配置页面。

  4. 单击页面右上角的组件库,打开组件库面板。

  5. 组件库面板左侧导航栏中需选择输入,在右侧的输入组件列表中找到API组件,并拖动该组件至画布。

  6. 单击API输入组件卡片中的image图标,打开API输入配置对话框。

  7. API输入配置对话框中,配置以下参数。

    参数

    描述

    步骤名称

    API输入组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:

    • 只能包含中文、字母、下划线(_)、数字。

    • 长度不超过64个字符。

    数据源

    在数据源下拉列表中,展示当前Dataphin中所有API类型的数据源,包括您已拥有同步读权限的数据源和没有同步读权限的数据源。

    • 对于没有同步读权限的数据源,您可以单击数据源后的申请,申请数据源的同步读权限。具体操作,请参见申请数据源权限

    • 如果您还没有API类型的数据源,单击新建,创建数据源。具体操作,请参见创建API数据源

    请求方式

    支持POST请求和GET请求,默认选择为GET。

    • POST:可配置ParamsHeadersBody,允许为空。

    • GET:可配置ParamsHeaders,允许为空。

    URL路径

    非必填,输入URL中的路径,此处填写的路径参数将会同数据源中配置的URL进行请求URL的拼接。例如,数据源中配置的URLhttps://www.aliyun.com,填写的URL路径为/home,则请求URLhttps://www.aliyun.com/home

    读取JSON路径(非必填)

    填写JSON路径将按照路径进行读取数据,例如data.result;不填写则读取返回数据。

    请求次数

    支持单次请求多次请求

    • 单次请求:只进行一次请求。

    • 多次请求:根据指定循环的参数,进行多次请求。选择多次请求时,需配置以下参数。

      循环模式:可选择为分页循环参数遍历循环

      分页循环

      • 分页方式:可选择为页码/偏移量游标

      • 请求参数:配置循环请求的参数,可从ParameterBody中进行选择或手动输入(仅当Body格式为JSON时支持手动填写),支持使用JSON路径格式如a.b.c,适用于请求体格式为JSON的场景。

      • 参数值来源(仅分页方式为游标时可配置):参数值来源必须为返回参数,您可输入请求更新值,支持JSON路径。

      • 请求起始值(非必填):

        • 分页方式为页码/偏移量:输入请求起始值,默认为1。

        • 分页方式为游标:输入请求起始值,默认为0。

      • 请求步长(非必填,仅分页方式为页码/偏移量时可配置):输入循环请求步长,默认为1。

      • 终止条件:当循环达到终止条件时停止循环。

        • 左条件:配置参数来源和参数值。

          • 参数来源:可选择为请求参数返回参数请求次数,默认选择为返回参数。

          • 参数值:支持填写JSON路径,当参数来源选择请求参数时,无需配置判断符和右条件。

        • 判断符:可选为不为空=,当选择为不为空时,无需配置右条件。

        • 右条件:配置参数来源和参数值。

          • 参数来源:可选择为请求参数返回参数常量,默认选择为常量。

          • 参数值:支持填写JSON路径。

      参数遍历循环

      • 请求参数:配置循环请求的参数,可从ParameterBody中进行选择或手动输入(仅当Body格式为JSON时支持手动填写),支持使用JSON路径格式如a.b.c,适用于请求体格式为JSON的场景。

      • 获取方式

        • 手动填写:在参数值列表区域中,填写循环列表,可使用换行分隔。

        • API获取:当前仅支持无认证的API。

          • URL:配置参数列表的请求地址,其中请求方式可选择为POSTGET,默认为GET。

          • 请求参数:配置请求需要额外的参数,默认为空。单击新建添加一行,配置参数名称、参数值和添加到。

            • 参数名称参数值:支持所有字符。

            • 添加到:可选择ParamsHeaderBody,默认为Params。其中,仅当请求方式为POST时,支持选择Body。

          • 输出值:填写输出值,支持JSON路径data.list。

      • 终止条件:所选参数值遍历完时结束循环。

    请求参数

    请求参数中包含ParamsHeadersBody(仅当请求方式选择为POST时支持)和签名

    Params、Headers、Body

    • 参数名称:支持中文、英文和特殊字符。

    • 参数类型:可选择常量时间戳随机数

    • 参数值:当参数类型选择为常量时,参数值支持输入中文、英文和特殊字符;当参数类型选择为时间戳时,参数值仅支持自动生成;当参数类型选择为随机数时,参数值可选择自动生成为163264128位随机数。

    • 数据类型:仅在Body中,支持配置数据类型,可选择StringLongJSONDoubleBooleanDate,默认为String。

    • 操作

      • 新建:单击+新建,新增一行参数,单击image图标保存此参数后,方可再新建下一个参数。单击image可取消填写此参数。

      • 编辑:单击已配置完成参数操作列的image图标,可编辑此参数各项配置。

      • 移动:单击已配置完成参数操作列的image图标,可将此参数移动至非当前列表中,例如当前参数在Params列表中,移动时可选择移动至HeaderBody中。若目标列表中已存在同名参数,则不支持移动;若移动的目标列表为Body,但Body的输入方式为JSON,则不支持移动。

      • 删除:单击已配置完成参数操作列的image图标,可删除当前参数,若参数被签名配置引用,则不允许删除。

    Body的输入格式可选择为JSONKey-Value

    • JSON:需要在JSON代码编辑区域输入相应JSON代码。单击image图标,系统将自动格式化(美化)所输入的代码。

    • Key-Value:单击新建,分别输入参数名称和参数值,并选择当前参数的参数类型和数据类型。

    签名

    签名默认关闭,启用签名后,需配置签名的生成规则。

    • 签名名称:用户封装请求参数Key值。

    • 签名位置:可选择ParamsHeaderBody(仅当请求方式为POST时支持)。

    • 引用参数:可选择多个参数列表中的KV参数。

    • 生成函数:可选择MD5HEXHMAC-MD5HMAC-SHA256HMAC-SHA1

    • 密钥:可选择治理 > 数据安全 > 密钥管理中的密钥,或手动输入密钥。

      若当前Dataphin实例未购买资产安全增值模块,则仅支持手动输入;若当前Dataphin实例已购买资产安全增值模块,则仅支持选择治理 > 数据安全 > 密钥管理中的密钥。若下拉列表中无可选密钥,可单击前往注册,跳转至治理 > 数据安全 > 密钥管理中注册密钥。

      说明

      当生成函数选择为MD5HEX时,此参数为非必填。

    • 拼接内容:可选择仅参数值参数名称+参数值,默认为参数名称+参数值。

    • 拼接顺序:可选择按字典顺序按选择顺序,默认为按字典顺序。

    • 拼接方式:可选择固定连接符无连接符,默认为固定连接符。

      说明

      仅当拼接内容选择为参数名称+参数值时,支持配置此参数。

    • 拼接示例:根据上方配置,展示拼接后的字符串。若参数中使用了时间戳或随机数,则此处展示临时生成的值。

    输出字段

    为您展示输出字段。 您可以手动添加输出字段:

    • 批量添加输出字段。

      • 格式:单击批量添加 ,支持以JSON格式和TEXT格式批量配置。

        • JSON格式:

          // 示例:
          [{
            "index": "0",
            "name": "user_id",
            "type": "String"
           },
           {
            "index": "1",
            "name": "user_name",
            "type": "String"
           }]
          说明

          index表示指定对象的列编号,name表示引入后的字段名称,type表示引入后的字段类型。例如:"index":3,"name":"user_id","type":"String" 表示把文件中的第4列引入,字段名为user_id,字段类型为 String。

        • TEXT格式:

          // 示例:
          0,user_id,String
          1,user_name,String
      • 行分隔符列分隔符:批量添加格式TEXT时,支持配置行分隔符和列分隔符。行分隔符用于分隔每个字段的信息,默认为换行符\n,可支持\n ; . ;列分隔符用于分隔字段名与字段类型,默认为英文逗号(,)。

    • 新建单个输出字段。

      单击新建输出字段,根据页面提示填写来源序号字段并选择类型。单击image图标保存当前行,单击image图标删除当前行。

    • 管理输出字段。

      对已添加的字段,您可以执行如下操作:

      • 单击操作列下的agag图标,编辑已有的字段。

      • 单击操作列下的agfag图标,删除已有的字段。

  8. 单击确认,完成API输入组件的属性配置。