更新时间:2022-04-26 GMT+08:00
分享

创建Rest Service(自定义连接器)

可以通过依次创建Rest Service和Rest Action,使得系统可以调用第三方提供的Rest协议的接口,实现第三方提供的业务功能。

操作步骤

  1. 在App开发界面左侧列表单击,选择“自定义连接器 > 自定义连接器”。
  2. 击“+”,配置基本信息,单击“保存”。

    图1 新建服务入口
    表1 参数说明

    参数名

    说明

    标签

    该REST服务的标签名。

    名称

    该REST服务的名称,唯一标识。系统会自动在该名称前添加命名空间__。

    名称长度不能超过64个字节,必须以英文字母开头,且只能由英文字母,数字和单下划线(_)组成。

    图标

    该REST服务的图标。

    描述

    REST服务相关描述信息。

    长度不超过255个字节。

  3. 在右侧选择“认证信息”页签,单击“新建”,配置认证。

    可以新建多个认证,不同的Rest Action可以有不同的认证方式。

    图2 配置认证信息
    表2 参数说明

    参数名

    说明

    标签

    该认证的标签名。

    名称

    该认证的名称,唯一标识。系统会自动在该名称前添加命名空间__。

    名称长度不能超过64个字节,必须以英文字母开头,且只能由英文字母,数字和单下划线(_)组成。

    目录

    该认证所属的目录分类名称。

    描述

    该认证相关描述信息。

    长度不超过255个字节。

    使用证书

    服务端是否需要客户端证书,是否需要进行双向认证。

    若勾选“使用证书”,您需要配置证书类型,支持“CRT”和“P12”两种,然后配置证书和密钥。

    使用根证书

    客户端是否需要服务端证书,是否需要进行双向认证。

    若勾选“使用根证书”,您需要提前在管理中心开启根证书校验并上传根证书,具体方法请参考管理HTTPS根证书,上传后在根证书下拉框中选择对应的证书。

    API主机地址

    配置此地址后,可以限定REST操作的请求前缀,防止敏感信息泄露。每次更改此地址,都需要重新配置鉴权信息。

    打包当前配置

    默认为选中,对信息敏感的场景,建议不勾选。

    选中该选项后,应用打包时会将当前配置的连接器信息一并打出。例如,如果应用包发布到运行环境,当前配置默认为被同步到运行环境中。

    可选设置 > 鉴权设置

    鉴权协议

    鉴权协议,分OAuth、简单消息头和JWT(JSON Web Tokens)三种。

    鉴权模式

    设置为“client credentials”。这里只支持OAuth2的client credentials鉴权模式。

    鉴权地址

    第三方系统OAuth2协议获取token的地址。例如AppCube获取token的地址是“https://{host}:{port}/baas/auth/v1.0/oauth2/token”,这里需要填入第三方系统的。

    Client ID

    OAuth2协议中的client id。

    如果该REST Service为AppCube提供,可在AppCube首页单击“管理”,进入管理页面。选择“系统管理 > OAuth”,查看对应鉴权的“客户端Id”。

    Client Secret

    OAuth2协议中的client secret。

    如果该REST Service为AppCube提供,可在AppCube首页单击“管理”,进入管理页面。选择“系统管理 > OAuth”中,查看对应鉴权的“客户端密钥”。

    消息体属性

    从鉴权接口返回的消息字段的映射规则。

    根据OAuth2标准协议,返回体一般如图3所示。但是由于不同的第三方实现的情况可能不一样,返回的不一定是标准的键值。比如有些第三方接口返回的是“accessToken”,而不是“access_token”,所以平台需要对这些不标准的键值映射成标准的。

    图2中配置的消息体属性是第三方返回的“accessToken”,AppCube使用“access_token”这个键值来存储。最终存储的结果如下:

    {
    “access_token”: ${accessToken}
    }

    消息头属性

    定义调用业务接口时所用的消息头的映射规则。

    当使用得到的token去返回具体rest action的时候,按照OAuth2的标准一般是将token放到请求头上,如:Authorization: Bearer ${access_token}。

    但是由于各个第三方接口实现的差异性,不一定叫Authorization,也不一定会在token前面加Bearer,比如访问平台的接口,token直接放在请求头Access-Token上,且不需要Bearer前缀,所以需要配置消息头属性。

    图2中配置的消息头属性,意思是将从消息体属性获取到的“access_token”放到请求头“Access-Token”上。

    图3 返回体

分享:

    相关文档

    相关产品

关闭导读