更新时间:2024-01-24 GMT+08:00
分享

查询服务providers

功能介绍

根据consumer_id获取该服务的所有providers,比如A->B、A->C。那么根据A的服务Id,可以查询到B、C的微服务信息。

URI

GET /v4/{project_id}/registry/microservices/{consumer_id}/providers

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

请填固定值:default。

consumer_id

String

消费者的服务id。

表2 Query参数

参数

是否必选

参数类型

描述

noSelf

Integer

是否取消返回自依赖的关系,0表示不返回自依赖关系,1表示返回自依赖关系。

sameDomain

Integer

是否取消返回共享服务的关系,0表示不返回共享服务,1表示返回。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

Authorization

String

若ServiceComb引擎专享版开启了安全认证,此参数必填。否则,无此参数。

开启了安全认证的ServiceComb引擎专享版Token,格式为:

Authorization:Bearer {Token}

Token获取方法,请参考获取ServiceComb引擎专享版用户Token

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

providers

MicroService object

微服务信息。

表5 MicroService

参数

参数类型

描述

serviceId

String

微服务唯一标识。字符长度为1~64。正则表达式为^.*$。

environment

String

用于区分微服务环境,取值为:development、testing、acceptance、production。当配置为development、testing或acceptance时,可以通过批量上传schemas接口新增或者修改已存在的Schema;当配置为production时,则不可以新增或者修改Schema。默认值development。

appId

String

应用App唯一标识。字符长度为1~160。 正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。

serviceName

String

微服务名称,同一个App要保证唯一。字符长度为1~128。 正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。

version

String

微服务版本号。字符长度为1~64。 正则表达式为^[0-9]$|^[0-9]+(.[0-9]+)$。

description

String

微服务描述信息。字符长度不超过256。

level

String

微服务层级:FRONT、MIDDLE、BACK。

registerBy

String

微服务注册方式:SDK、PLATFORM、SIDECAR、UNKNOWN。

schemas

Array of strings

微服务访问的契约内容。支持数字、字母,支持使用括号内字符(_-.)做连接符,长度1-160字节,数组长度最大100个契约。

status

String

微服务状态:UP表示上线,DOWN表示下线。默认值UP。

timestamp

String

微服务注册时间。

modTimestamp

String

最后修改UTC时间。

framework

Framework object

开发框架信息。

paths

Array of ServicePath objects

服务路由信息。

properties

Object

扩展属性。可以自定义KEY和相应的Value。

表6 Framework

参数

参数类型

描述

name

String

微服务开发框架,默认值为UNKNOWN。

version

String

微服务开发框架版本号。

表7 ServicePath

参数

参数类型

描述

Path

String

路由地址。

Property

Object

微服务扩展属性,可以自定义KEY和相应的Value。长度最小1字节。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

状态码: 500

表9 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

请求示例

查询指定服务ID为consumer_id的消费者服务的providers信息。

GET https://{endpoint}/v4/{project_id}/registry/microservices/{consumer_id}/providers

响应示例

状态码: 200

查询成功,则返回serviceId或者schemaId。

{
    "providers": [
        {
            "serviceId": "8aed80ea052ac04a64dfc79c24f2170224d074f5",
            "appId": "default",
            "serviceName": "test",
            "version": "1.0.0",
            "description": "this is a test",
            "level": "BACK",
            "status": "UP",
            "properties": {
                "test": "test"
            },
            "timestamp": "1650543950",
            "modTimestamp": "1650544411"
        }
    ]
}

状态码

状态码

描述

200

查询成功。

400

错误的请求。

500

服务内部错误。

错误码

请参见错误码

相关文档