文档首页 > > API参考> CSE API> 微服务实例> 按条件查询微服务实例

按条件查询微服务实例

分享
更新时间:2020/06/24 GMT+08:00

功能介绍

实例注册后可以根据微服务版本规则或字段条件发现该微服务的实例。

接口约束

使用时版本号0+这种特殊字符需要注意转码,如果是curl 可以使用引号引起来,例如curl -k "https://{endpoint}/v4/{project_id}/registry/instances?appId=AppTest&serviceName=helloworld&version=0+"

URI

GET /v4/{project_id}/registry/instances

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户子项目的唯一标识。字符长度为1~64。

表2 Query参数

参数

是否必选

参数类型

描述

appId

String

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

serviceName

String

微服务名称。字符长度为1~128。 正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$

version

String

版本规则。包括:1 表示精确版本匹配,如:0.0.12 表示后续版本匹配,如:0.0.13 表示最新版本,如:latest4 表示版本范围,如:0.1.0-0.2.0

tags

String

Tag标签过滤,多个时逗号分隔。 正则表达式为^[a-zA-Z][a-zA-Z0-9_-.]{0,63}$

env

String

实例的environment。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

x-domain-name

String

租户账号名称。

X-consumer_id

String

微服务消费者的微服务唯一标识。

响应参数

状态码为 200 时:

表4 响应Body参数

参数

参数类型

描述

instances

Array of MicroServiceInstance objects

实例列表。

表5 MicroServiceInstance

参数

参数类型

描述

instanceId

String

实例id,唯一标识。创建实例,instanceId由service-center产生

serviceId

String

微服务唯一标识,创建实例时,以url里面的为准,不用这里的serviceId。

version

String

微服务版本号

hostName

String

主机信息。

endpoints

Array of strings

访问地址信息。

status

String

实例状态,UP|DOWN|STARTING|OUTOFSERVICE,默认值UP

properties

Map<String, String>

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

healthCheck

HealthCheck object

健康检查信息。

dataCenterInfo

DataCenterInfo object

数据中心信息。

timestamp

String

实例创建时间戳,自动生成

modTimestamp

String

更新时间

表6 HealthCheck

参数

参数类型

描述

mode

String

心跳模式 push/pull。

port

Integer

端口。

interval

Integer

心跳间隔(秒)。

times

Integer

允许失败次数。

表7 DataCenterInfo

参数

参数类型

描述

name

String

区域名字

region

String

区域

availableZone

String

可获取区

状态码为 400 时:

表8 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

状态码为 500 时:

表9 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

请求示例

GET https://{endpoint}/v4/{project_id}/registry/instances

""

响应示例

状态码为 200 时:

{"instances" : [{"instanceId" : "string","serviceId" : "string","version" : "string","hostName" : "string","endpoints" : [ "string","string"],"status" : "string",,"healthCheck" : {"mode" : "string","port" : 0,"interval" : 0,"times" : 0},"dataCenterInfo" : {"name" : "string","region" : "string","availableZone" : "string"},"timestamp" : "string","modTimestamp" : "string"}]}

状态码为 400 时:

{
  "errorCode" : "string",
  "errorMessage" : "string",
  "detail" : "string"
}

状态码为 500 时:

{
  "errorCode" : "string",
  "errorMessage" : "string",
  "detail" : "string"
}

状态码

状态码

描述

200

查询成功。

400

请求参数错误。

500

服务内部错误。

错误码

请参见错误码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问