更新时间:2022-12-05 GMT+08:00

连接器RESTful接口规范

概述

ROMA Connect通过连接器开放的RESTful接口与连接器进行数据交互,实现对数据源的读写。为确保ROMA Connect可正常读写数据,连接器所实现并开放的RESTful接口必须满足ROMA Connect的规范要求。

ROMA Connect对连接器开放的数据读取接口和数据写入接口的实现做了标准的规范要求,连接器应遵循ROMA Connect定义的标准规范实现接口。

数据读取接口

接口规范定义

  • 接口URI

    POST /reader

  • 接口请求
    {
        "job_name": "job_name",
        "datasource": {
            "para1": "******",
            "para2": "******",
             ...
        },
        "params": {
            "extend": {
                "ex_para1": "******",
                "ex_para2": "******",
                 ...
            },
            "pagination": {
                "page_no": 1,
                "page_size": "10"
            },
            "migration": {
                "begin": **********,
                "end": **********
            }
        }
    }
  • 接口响应
    {
        "datas": [
            {
                "para1": "******",
                "para2": "******",
                 ...
            },
            {
                "para1": "******",
                "para2": "******",
                 ...
            },
            ...
        ]
    }

接口参数说明

  • 请求参数
    表1 请求参数

    参数

    是否必选

    参数类型

    描述

    job_name

    String

    任务名称。由英文字母、数字、下划线、中划线组成,长度为4~64字符。

    datasource

    Object

    数据源参数对象。包括连接器接数据库依赖的参数,所有参数组成的Json体。

    params

    Params

    连接器所需参数对象。

    表2 Params说明

    参数

    是否必选

    参数类型

    描述

    pagination

    Pagination

    分页对象。

    migration

    Migration

    增量迁移对象。

    extend

    Object

    连接器所属的扩展参数,其值为各个扩展参数组成的Json体。

    表3 Pagination说明

    参数

    是否必选

    参数类型

    描述

    page_no

    Integer

    当前分页号。

    page_size

    Integer

    每页的数据记录数。

    表4 Migration说明

    参数

    是否必选

    参数类型

    描述

    begin

    Date

    迁移数据开始时间。

    end

    Date

    迁移数据结束时间。

  • 响应参数
    表5 响应参数

    参数

    参数类型

    描述

    datas

    List<Object>

    读取数据组成的列表。该字段要求满足Json Array的格式,里面的字段由连接器侧根据实际情况而定。

数据写入接口

接口规范定义

  • 接口URI

    POST /writer

  • 接口请求
    {
        "job_name": "job_name",
        "datasource": {
            "para1": "******",
            "para2": "******",
             ...
        },
        "params": {
            "extend": {
                "ex_para1": "******",
                "ex_para2": "******",
                 ...
            }
        },
        "meta-data": [
            {
                "name": "id",
                "type": "String",
                "format": "",
                "path": "datas[i].id"
            },
            {
                "name": "company",
                "type": "String",
                "format": "",
                "path": "datas[i].company"
            },
            ...
        ],
        "datas": [
            {
                "data1": "******",
                "data2": "******",
                 ...
            },
            {
                "data1": "******",
                "data2": "******",
                 ...
            },
            ...
        ]
    }
  • 接口响应
    {
        "num_success": "2",
        "num_fail": "0",
        "fail_datas": [
            {}
        ]
    }

接口参数说明

  • 请求参数
    表6 请求参数

    参数

    是否必选

    参数类型

    描述

    job_name

    String

    任务名称。由英文字母、数字、下划线、中划线组成,长度为4~64字符。

    datasource

    Object

    数据源参数对象。包括连接器接数据库依赖的参数,所有参数组成的Json体。

    params

    Params

    连接器所需参数对象。

    meta-data

    List<Meta-data>

    元数据参数列表。

    datas

    List<Object>

    连接器处理的数据列表。

    表7 Params说明

    参数

    是否必选

    参数类型

    描述

    extend

    Object

    连接器所属的扩展参数,其值为各个扩展参数组成的Json体。

    表8 Meta-data说明

    参数

    是否必选

    参数类型

    描述

    name

    String

    数据字段名称。

    type

    String

    字段值类型。支持的类型有:String,Integer,Date和Long。

    format

    String

    数据的格式化字符串。当字段值为Date类型时,需要填写该值,用于描述字符串的格式。

    path

    String

    字段在源数据中的获取路径。

  • 响应参数
    表9 响应参数

    参数

    参数类型

    描述

    num_success

    Integer

    数据写入成功数。

    num_fail

    Integer

    数据写入失败数。

    fail_datas

    List<Object>

    处理失败的数据列表。