更新时间:2024-07-17 GMT+08:00
分享

通过数据API开放数据

前提条件

  • 确保业务系统所在网络与ROMA Connect的网络互通。

    若通过公网互通,ROMA Connect实例需绑定弹性IP。

  • 确保业务系统的数据库为ROMA Connect支持的数据源类型。

    数据API支持的数据源请参见服务集成支持的数据源

  • 准备一个可用的独立域名,用于作为API的访问域名。

    确保已完成独立域名到“服务集成APIC连接地址”的域名解析配置,具体请参考增加A类型记录集

    若还没有独立域名,您可以通过域名注册服务申请域名,并通过备案中心完成域名备案。

  • 如果数据API使用HTTPS请求协议,您还需要为独立域名申请SSL证书,并获取pem格式的SSL证书内容和密钥。

业务系统开放数据API

  1. 创建集成应用。

    ROMA Connect实例中的资源都要归属到某个集成应用下,在创建其他资源前,您需要确保有一个集成应用。若已有可用的集成应用,可跳过此步骤。

    1. 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
    2. 在左侧的导航栏选择“集成应用”,单击页面右上角的“创建集成应用”。
    3. 在创建集成应用弹窗中填写集成应用的“名称”,然后单击“确认”。
  2. 接入数据源。
    配置ROMA Connect接入业务系统的数据库,确保可以正常从数据库读取数据。不同类型数据源的接入配置不同,此处以MySQL数据库为例,其他类型数据库请参考接入数据源
    1. 在左侧的导航栏选择“数据源管理”,单击页面右上角的“接入数据源”。
    2. 在接入数据源页面的“默认数据源”页签下,选择“MySQL”数据源,然后单击“下一步”。
    3. 在页面中配置数据源的连接信息。
      表1 数据源连接信息

      参数

      配置说明

      数据源名称

      填写数据源的名称,根据规划自定义。建议您按照一定的命名规则填写数据源名称,方便您快速识别和查找。

      集成应用

      选择数据源所归属的集成应用。

      描述

      单击“”,编辑数据源的描述信息。

      连接模式

      选择连接数据库模式。

      • 默认:由系统根据用户配置自动拼接数据源的连接字符串。
      • 专业:由用户自己输入JDBC格式的数据源连接字符串。

      连接地址

      仅当“连接模式”选择“默认”时需要配置。

      填写数据库的连接IP地址和端口号。

      数据库名

      仅当“连接模式”选择“默认”时需要配置。

      填写要接入的数据库名。

      编码格式

      仅当“连接模式”选择“默认”时可配置。

      数据库所使用的编码格式。

      超时时间

      仅当“连接模式”选择“默认”时可配置。

      连接数据库的超时时间,单位为秒。

      连接字符串

      仅当“连接模式”选择“专业”时需要配置。

      填写MySQL数据库的JDBC格式连接串,例如:jdbc:mysql://{hostname}:{port}/{dbname}。

      • {hostname}为数据库的连接地址。
      • {port}为数据库的连接端口号。
      • {dbname}为要接入的数据库名。

      用户名

      填写连接数据库的用户名。

      密码

      填写连接数据库的用户密码。

    4. 完成数据源参数配置后,单击“开始检测”,进行数据源的连接测试。
      • 若测试结果为“数据源连接成功!”,则继续下一步。
      • 若测试结果为“数据源连接失败!”,则检查和修改数据源连接参数配置,然后单击“重新检测”,直到连接成功为止。
    5. 单击“创建”,完成数据源的接入。
  3. 创建数据后端。
    通过自定义后端,把业务系统的数据转换为一个后端服务。
    1. 在左侧的导航栏选择“服务集成 APIC > 自定义后端”,在“后端列表”页签中单击“创建后端”。
    2. 在创建后端页面配置后端信息,完成后单击“立即创建”。
      表2 后端请求配置

      参数

      配置说明

      后端名称

      填写后端的名称,根据规划自定义。建议您按照一定的命名规则填写后端名称,方便您快速识别和查找。

      集成应用

      选择后端所属的集成应用。

      后端请求方法

      选择后端的请求方法,可选择“GET”、“POST”、“PUT”和“DELETE”。

      后端请求路径

      填写后端的请求路径,格式如:/getUserInfo/userId。

      请求路径中的内容区分大小写。

      后端安全认证

      选择后端的安全认证方式。

      • 签名密钥:表示使用签名密钥的方式,对请求发送方进行认证。若使用签名密钥进行认证,调用该后端服务的API,也需要绑定相同的签名密钥。
      • 无认证:表示不对调用请求进行认证。

      描述

      填写后端的描述信息。

      高级设置

      版本号

      填写后端的版本号,自定义,用于区分不同版本的后端服务,如V1.0。

      入参定义

      根据实际需要定义后端服务的请求参数。

      在“入参定义”下单击“新增入参定义”,添加自定义后端的请求参数。

      • 名称:请求参数的名称,自定义。
      • 参数位置:请求参数在后端服务请求中的位置,可选择“Headers”和“Parameters”。
      • 测试界面默认值:仅用于后续的自定义后端测试步骤,作为参数的默认测试值。在自定义后端部署时不生效。
      • 必填:在后端服务请求中,请求参数是否必填。
      • 描述:填写参数的描述信息。

      返回类型

      选择后端的响应数据格式,可选择“JSON”、“XML”和“STREAM”。

      是否格式化

      是否将响应消息体按选择的返回类型进行格式化。

      后端创建完成后,页面自动跳转到该后端的编辑器页面,后端类型默认为数据后端。

    3. 在编辑器页面左侧单击“文件>新建数据后端>添加数据源”。
    4. 在添加数据源弹窗中配置数据源信息,完成后单击“立即添加”。
      表3 数据源配置

      参数

      配置说明

      选择数据源

      选择接入数据源中已创建的数据源。

      选择执行语句类型

      选择执行语句的类型,可选择“SQL”和“SP”(Stored Procedure)。

      如果是Redis或MongoDB数据源,选择“SQL”,实际执行语句为NoSQL。

      高级设置

      返回对象

      填写返回对象的名称,执行语句的执行结果将封装在该对象中返回。

      结果分页选项

      执行语句的执行结果是否分页返回。

      若同一个数据后端添加多个数据源时,不支持配置“结果分页选项”。

      预编译

      是否对执行语句进行预编译,可以防止SQL注入风险。

    5. 添加数据源后,在编辑器左侧选择数据源,然后您可以在右侧的语句编辑框中添加执行语句,通过执行语句获取要返回的数据。

      若在SQL语句中同时引用多种数据类型的后端请求参数时,系统会默认把传入的参数转换为String类型。因此在执行SQL语句时,需要调用相应的函数对非String类型参数进行数据类型转换。

    6. 完成后在页面右上角单击“保存”,保存数据后端配置。
    7. 测试后端功能。

      在页面右上角单击“测试”,在下方的“测试参数”处,根据后端服务的定义添加请求参数,然后单击“立即测试”,发送请求。在“执行结果”栏查看后端的响应是否返回所期望的数据。

    8. 后端测试完成后,在页面右上角单击“部署”,在确认弹窗中单击“确定”,部署后端服务。
  4. 发布数据API。
    把数据后端发布为数据API并部署到环境中,即可供其他业务系统调用。
    1. 在页面右上角单击“发布”。
    2. 在发布弹窗中配置前端API的相关信息,完成后单击“立即发布”,为该后端创建一个对应的前端API,并发布到环境上。
      API发布完成后,自动跳转到对应前端API的API运行页面。
      表4 发布配置

      参数

      配置说明

      所属分组

      选择前端API所属的API分组。若没有可用的API分组,可单击右侧的“创建分组”,创建一个API分组。

      发布环境

      选择前端API要发布的环境,对外正式开放API时,应选择默认环境“RELEASE”。

      前端安全认证

      选择前端API的安全认证方式,推荐使用APP认证方式。

      • APP认证:表示由ROMA Connect对API请求进行安全认证。用户调用API时,使用集成应用的Key和Secret进行API请求的安全认证。
      • 华为IAM认证:表示由IAM对API请求进行安全认证。用户调用API时,使用Token或AK/SK进行API请求的安全认证。
      • 自定义认证:表示使用自定义的函数API对API请求进行安全认证。
      • 无认证:表示API请求不需要认证。

      自定义认证

      仅当“前端安全认证”选择“自定义认证”时需要配置。

      选择已创建的前端类型自定义认证。

      前端请求协议

      选择前端API使用的请求协议,可选择“HTTP”、“HTTPS”和“HTTP&HTTPS”,传输重要或敏感数据时推荐使用HTTPS。

      后端超时 (ms)

      后端服务请求的超时时间,默认为60000ms。

      重试次数

      ROMA Connect调用后端服务失败后的重试次数。

      • 值为-1时,表示不开启重试功能。
      • 值为0-10时,表示开启重试功能,并根据设置的值执行重试。

      高级设置

      前端请求方法

      选择前端API的请求方法。“ANY”表示该API支持任意请求方法,用于获取数据库数据的API一般使用GET方法即可。

      前端请求路径

      填写前端API的请求路径,格式如:/getUserInfo/userId。

      请求路径中的内容区分大小写。

      支持跨域(CORS)

      是否支持跨域访问API。

      浏览器出于安全性考虑,限制从页面脚本内发起的跨域请求,此时页面只能访问同源的资源。而CORS允许浏览器向跨域服务器发送XMLHttpRequest请求,从而实现跨域访问。跨域访问API请参见配置跨域访问API

  5. 为数据API绑定独立域名。
    1. 在页面左上角选择“分组信息”,在“域名管理”下单击“绑定独立域名”。
    2. 在绑定独立域名弹窗中填写域名配置信息,完成后单击“确定”。
      表5 独立域名配置

      参数

      配置说明

      域名

      填写要绑定的域名。

      支持最小TLS版本

      选择域名访问所使用的最小TLS版本。

      支持http to https自动重定向

      是否支持HTTP到HTTPS的重定向。

      仅当API的请求协议选择“HTTPS”或“HTTP&HTTPS”,且独立域名已绑定SSL证书时重定向生效。

      说明:

      由于浏览器限制,非GET或非HEAD方法的重定向可能导致数据丢失,因此API请求方法限定为GET或HEAD。

    3. (可选)如果数据API支持HTTPS请求协议,则需要为独立域名绑定SSL证书。否则跳过此步骤。
      1. 在已绑定的独立域名右侧单击“选择SSL证书”。
      2. 在选择SSL证书弹窗中勾选要绑定的SSL证书,完成后单击“确定”,完成SSL证书的绑定。

        若证书列表中无可用的SSL证书,可单击“创建SSL证书”,新增SSL证书。

其他业务系统调用API

  1. 向API提供方获取API的调用信息。
    • 获取API的请求信息。

      API提供方可在ROMA Connect控制台选择“服务集成 APIC > API列表”,在列表中单击API的名称进入API运行页面,在页面中可获取API的请求方法和URL,在“前端配置”页签下,可获取API的请求参数。

    • 获取API的认证信息。
      根据API的安全认证方式不同,需要获取不同的认证信息。
      • APP认证:
        • 签名认证:向API提供方获取该API所授权凭据的Key和Secret,以及用于调用API的SDK。
        • 简易认证:向API提供方获取该API所授权凭据的AppCode。
        • 其他认证:向API提供方获取该API所授权凭据的Key和Secret。
      • 华为IAM认证:通过云服务平台的账号凭证(账号密码或者AK/SK)进行认证。如果使用AK/SK进行认证,还需要向API提供方获取用于调用API的SDK。
      • 自定义认证:向API提供方获取请求参数中要携带的自定义认证信息。
      • 无认证:无需认证信息。
  2. 根据获取的API调用信息,拼接并发送API请求,获取所需数据。

相关文档