跳转至

第三方服务注册中心

1. 说明

  • fateflow支持第三方服务进行注册,用于回调场景
  • 所有的接口需要先注册服务地址,再注册接口

2. 注册

2.1 服务器注册

  • uri: /v1/server/<server_name>/register
  • 方式:POST
  • 请求参数
参数名 必选 类型 说明
host string 服务ip地址
port int 服务端口
  • 返回参数
参数名 类型 说明
retcode int 返回码
retmsg string 返回信息

2.2 服务注册

  • uri: /v1/service/registry
  • 方式:POST
  • 请求参数
参数名 必选 类型 说明
server_name string 注册的服务器名字
service_name string 服务名
uri string 服务uri
method string 请求方式,默认"POST"
protocol string 默认"http"
  • 返回参数
参数名 类型 说明
retcode int 返回码
retmsg string 返回信息

3 接口参数详情

3.1 ApiReader

ApiReader组件需要第三方服务注册三个接口:upload、query、download,用于请求离线id的特征数据。

3.1.1 upload

  • 说明:upload接口将id传给第三方服务
  • 接口注册:参考服务注册,其中service_name参数为"upload"
  • 请求参数:
  • headers: {"Content-Type": "application/octet-stream"}
  • params:
参数名 必选 类型 说明
requestBody string json字符串,包含特征筛选参数
- body:数据流
  • 请求示例(python):

    with open(id_path, "w") as f:
        data = MultipartEncoder(
            fields={'file': (id_path, f, 'application/octet-stream')}
        )
        upload_registry_info = service_info.get("upload")
        response = getattr(requests, upload_registry_info.f_method.lower(), None)(
            url=upload_registry_info.f_url,
            params={"requestBody": json.dumps({"stat_month": "202201", "version": "v1"})},
            data=data,
            headers={'Content-Type': "application/octet-stream"}
        )
    
    - 接口返回:

参数名 类型 说明
code int 返回码
message string 返回信息
data object 返回参数jobId,用于异步状态查询

3.1.2 query

  • 说明:query接口用于查询任务进度
  • 接口注册:参考服务注册,其中service_name参数为"query"
  • 请求参数:
  • body:
参数名 必选 类型 说明
jobId string upload返回的jobId
  • 接口返回:
参数名 类型 说明
code int 返回码
message string 返回信息
status string 任务状态

3.1.3 download

  • 说明:query接口用于查询任务进度
  • 接口注册:参考服务注册,其中service_name参数为"download"
  • 请求参数:
  • params:
参数名 必选 类型 说明
requestBody string json字符串,包含"jobId"
  • 接口返回: 特征数据流

3.2 认证

3.2.1 客户端认证(client_authentication)

  • 说明:客户端认证用于认证客户端的请求
  • 接口注册:参考服务注册,其中service_name参数为"client_authentication"
  • 请求参数:
  • body:
参数名 必选 类型 说明
full_path string 请求路径
headers string 请求头
form object 请求体
  • 接口返回:
参数名 类型 说明
code int 返回码
msg string 返回信息

3.2.2 站点认证

3.2.2.1 signature
  • 说明:请求其他站点前,fate flow会调用签名接口获取签名并放到请求头中
  • 接口注册:参考服务注册,其中service_name参数为"signature"
  • 请求参数:
  • body:
参数名 必选 类型 说明
party_id string 站点id
body object 请求体
  • 接口返回:
参数名 类型 说明
code int 返回码
site_signature string 签名
3.2.2.2 site_authentication
  • 说明:用于认证其他fate站点的请求
  • 接口注册:参考服务注册,其中service_name参数为"site_authentication"
  • 请求参数:
  • body:
参数名 必选 类型 说明
src_party_id string 请求方站点id
site_signature string 签名
body object 请求体
  • 接口返回:
参数名 类型 说明
code int 返回码
msg string 返回信息

3.3 鉴权(permission)

  • 说明:对其他站点的请求进行鉴权
  • 接口注册:参考服务注册,其中service_name参数为"permission"
  • 请求参数:
  • body:
参数名 必选 类型 说明
src_role string 请求方角色
src_party_id string 请求方partyid
initiator object 发起方信息
roles object 全部参与方信息
component_list object 组件列表
dataset_list object 数据集列表
run_time_conf object job conf
dsl object job dsl
component_parameters object 组件参数
  • 接口返回:
参数名 类型 说明
code int 返回码
msg string 返回信息