Lattice Hub 文档
HTTP OpenAPI服务

实例

服务实例注册、查询与隔离。

服务实例注册、查询与隔离。

默认 Base URL:http://127.0.0.1:8090。管理面接口需 Authorization(登录返回的 token)。

实例

实例查询与管理面创建;客户端注册见「客户端接口」。写接口 body 为 Instance 数组。

GET/naming/v1/instances需要鉴权

查询实例

按服务/主机等条件查询。Enrich 误标为 Path,实际均为 query。

  • Authorizationheader · string必填

    登录返回的 token。

  • servicequery · string可选

    服务名(与 namespace/host 至少填一类条件)。

  • namespacequery · string可选

    命名空间。

  • hostquery · string可选

    主机。

  • idquery · string可选

    实例 ID。

  • healthyquery · bool可选

    健康状态。

  • isolatequery · bool可选

    是否隔离。

  • protocolquery · string可选

    协议。

  • versionquery · string可选

    版本。

  • keysquery · string可选

    metadata key。

  • valuesquery · string可选

    metadata value。

  • offsetquery · integer可选

    偏移。

  • limitquery · integer可选

    分页大小。

请求示例
curl -sS 'http://127.0.0.1:8090/naming/v1/instances?namespace=default&service=payment' \
  -H "Authorization: $TOKEN"
响应示例
{
  "code": 200000,
  "info": "execute success",
  "instances": [{ "host": "10.0.0.8", "port": 8080, "healthy": true }]
}
POST/naming/v1/instances需要鉴权

创建实例

写接口 body 多为 protobuf 消息数组;下列为单条对象字段(见 specification)。

  • Authorizationheader · string必填

    登录返回的 token。

  • (body)body · Instance[]必填

    请求体为 Instance 的 JSON 数组:[{...}, ...]。下列字段为数组中单条对象的完整字段(含嵌套)。

  • idbody · string可选

    id

  • servicebody · string可选

    service

  • namespacebody · string必填

    namespace

  • hostbody · string必填

    host

  • portbody · uint32可选

    port

  • protocolbody · string可选

    protocol

  • versionbody · string可选

    version

  • prioritybody · uint32可选

    priority

  • weightbody · uint32可选

    weight

  • enable_health_checkbody · bool可选

    enable_health_check

  • health_checkbody · HealthCheck可选

    health_check

    • typebody · enum(HealthCheckType)可选

      type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

    • heartbeatbody · HeartbeatHealthCheck可选

      heartbeat

      • ttlbody · uint32可选

        ttl

    • tcpbody · TcpHealthCheck可选

      tcp

      • intervalbody · uint32可选

        interval

    • httpbody · HttpHealthCheck可选

      http

      • intervalbody · uint32可选

        interval

      • pathbody · string可选

        path

  • healthybody · bool可选

    healthy

  • isolatebody · bool可选

    isolate

  • locationbody · Location可选

    location

    • regionbody · string可选

      region

    • zonebody · string可选

      zone

    • campusbody · string可选

      campus

  • metadatabody · map<string,string>可选

    metadata

  • codebody · uint32必填

    业务码,成功多为 200000。

  • infobody · string可选

    提示信息。

  • instancebody · Instance可选

    返回中的 Instance 实体字段(批量接口在 responses[] 内)。

    • idbody · string可选

      id

    • servicebody · string可选

      service

    • namespacebody · string可选

      namespace

    • hostbody · string可选

      host

    • portbody · uint32可选

      port

    • protocolbody · string可选

      protocol

    • versionbody · string可选

      version

    • prioritybody · uint32可选

      priority

    • weightbody · uint32可选

      weight

    • enable_health_checkbody · bool可选

      enable_health_check

    • health_checkbody · HealthCheck可选

      health_check

      • typebody · enum(HealthCheckType)可选

        type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

      • heartbeatbody · HeartbeatHealthCheck可选

        heartbeat

        • ttlbody · uint32可选

          ttl

      • tcpbody · TcpHealthCheck可选

        tcp

        • intervalbody · uint32可选

          interval

      • httpbody · HttpHealthCheck可选

        http

        • intervalbody · uint32可选

          interval

        • pathbody · string可选

          path

    • healthybody · bool可选

      healthy

    • isolatebody · bool可选

      isolate

    • locationbody · Location可选

      location

      • regionbody · string可选

        region

      • zonebody · string可选

        zone

      • campusbody · string可选

        campus

    • metadatabody · map<string,string>可选

      metadata

    • ctimebody · string可选

      ctime

    • mtimebody · string可选

      mtime

    • revisionbody · string可选

      revision

请求示例
curl -sS -X POST 'http://127.0.0.1:8090/naming/v1/instances' \
  -H "Authorization: $TOKEN" \
  -H 'Content-Type: application/json' \
  -d '[{"service":"payment","namespace":"default","host":"10.0.0.8","port":8080,"weight":100,"healthy":true}]'
响应示例
{
  "code": 200000,
  "info": "execute success",
  "amount": 1
}
PUT/naming/v1/instances需要鉴权

更新实例

更新实例;body 为数组。

  • Authorizationheader · string必填

    登录返回的 token。

  • (body)body · Instance[]必填

    请求体为 Instance 的 JSON 数组:[{...}, ...]。下列字段为数组中单条对象的完整字段(含嵌套)。

  • idbody · string可选

    id

  • servicebody · string可选

    service

  • namespacebody · string可选

    namespace

  • hostbody · string可选

    host

  • portbody · uint32可选

    port

  • protocolbody · string可选

    protocol

  • versionbody · string可选

    version

  • prioritybody · uint32可选

    priority

  • weightbody · uint32可选

    weight

  • enable_health_checkbody · bool可选

    enable_health_check

  • health_checkbody · HealthCheck可选

    health_check

    • typebody · enum(HealthCheckType)可选

      type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

    • heartbeatbody · HeartbeatHealthCheck可选

      heartbeat

      • ttlbody · uint32可选

        ttl

    • tcpbody · TcpHealthCheck可选

      tcp

      • intervalbody · uint32可选

        interval

    • httpbody · HttpHealthCheck可选

      http

      • intervalbody · uint32可选

        interval

      • pathbody · string可选

        path

  • healthybody · bool可选

    healthy

  • isolatebody · bool可选

    isolate

  • locationbody · Location可选

    location

    • regionbody · string可选

      region

    • zonebody · string可选

      zone

    • campusbody · string可选

      campus

  • metadatabody · map<string,string>可选

    metadata

  • codebody · uint32必填

    业务码,成功多为 200000。

  • infobody · string可选

    提示信息。

  • instancebody · Instance可选

    返回中的 Instance 实体字段(批量接口在 responses[] 内)。

    • idbody · string可选

      id

    • servicebody · string可选

      service

    • namespacebody · string可选

      namespace

    • hostbody · string可选

      host

    • portbody · uint32可选

      port

    • protocolbody · string可选

      protocol

    • versionbody · string可选

      version

    • prioritybody · uint32可选

      priority

    • weightbody · uint32可选

      weight

    • enable_health_checkbody · bool可选

      enable_health_check

    • health_checkbody · HealthCheck可选

      health_check

      • typebody · enum(HealthCheckType)可选

        type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

      • heartbeatbody · HeartbeatHealthCheck可选

        heartbeat

        • ttlbody · uint32可选

          ttl

      • tcpbody · TcpHealthCheck可选

        tcp

        • intervalbody · uint32可选

          interval

      • httpbody · HttpHealthCheck可选

        http

        • intervalbody · uint32可选

          interval

        • pathbody · string可选

          path

    • healthybody · bool可选

      healthy

    • isolatebody · bool可选

      isolate

    • locationbody · Location可选

      location

      • regionbody · string可选

        region

      • zonebody · string可选

        zone

      • campusbody · string可选

        campus

    • metadatabody · map<string,string>可选

      metadata

    • ctimebody · string可选

      ctime

    • mtimebody · string可选

      mtime

    • revisionbody · string可选

      revision

请求示例
curl -sS -X PUT 'http://127.0.0.1:8090/naming/v1/instances' \
  -H "Authorization: $TOKEN" \
  -H 'Content-Type: application/json' \
  -d '[{"id":"<id>","service":"payment","namespace":"default","host":"10.0.0.8","port":8080,"weight":80}]'
响应示例
{
  "code": 200000,
  "info": "execute success",
  "amount": 1
}
POST/naming/v1/instances/delete需要鉴权

删除实例

删除实例;body 为含 id 或 service/namespace/host/port 的数组。

  • Authorizationheader · string必填

    登录返回的 token。

  • (body)body · Instance[]必填

    请求体为 Instance 的 JSON 数组:[{...}, ...]。下列字段为数组中单条对象的完整字段(含嵌套)。

  • idbody · string可选

    id

  • servicebody · string可选

    service

  • namespacebody · string可选

    namespace

  • hostbody · string可选

    host

  • portbody · uint32可选

    port

  • protocolbody · string可选

    protocol

  • versionbody · string可选

    version

  • prioritybody · uint32可选

    priority

  • weightbody · uint32可选

    weight

  • enable_health_checkbody · bool可选

    enable_health_check

  • health_checkbody · HealthCheck可选

    health_check

    • typebody · enum(HealthCheckType)可选

      type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

    • heartbeatbody · HeartbeatHealthCheck可选

      heartbeat

      • ttlbody · uint32可选

        ttl

    • tcpbody · TcpHealthCheck可选

      tcp

      • intervalbody · uint32可选

        interval

    • httpbody · HttpHealthCheck可选

      http

      • intervalbody · uint32可选

        interval

      • pathbody · string可选

        path

  • healthybody · bool可选

    healthy

  • isolatebody · bool可选

    isolate

  • locationbody · Location可选

    location

    • regionbody · string可选

      region

    • zonebody · string可选

      zone

    • campusbody · string可选

      campus

  • metadatabody · map<string,string>可选

    metadata

  • codebody · uint32必填

    业务码,成功多为 200000。

  • infobody · string可选

    提示信息。

  • instancebody · Instance可选

    返回中的 Instance 实体字段(批量接口在 responses[] 内)。

    • idbody · string可选

      id

    • servicebody · string可选

      service

    • namespacebody · string可选

      namespace

    • hostbody · string可选

      host

    • portbody · uint32可选

      port

    • protocolbody · string可选

      protocol

    • versionbody · string可选

      version

    • prioritybody · uint32可选

      priority

    • weightbody · uint32可选

      weight

    • enable_health_checkbody · bool可选

      enable_health_check

    • health_checkbody · HealthCheck可选

      health_check

      • typebody · enum(HealthCheckType)可选

        type 枚举:UNKNOWN | HEARTBEAT | TCP | HTTP

      • heartbeatbody · HeartbeatHealthCheck可选

        heartbeat

        • ttlbody · uint32可选

          ttl

      • tcpbody · TcpHealthCheck可选

        tcp

        • intervalbody · uint32可选

          interval

      • httpbody · HttpHealthCheck可选

        http

        • intervalbody · uint32可选

          interval

        • pathbody · string可选

          path

    • healthybody · bool可选

      healthy

    • isolatebody · bool可选

      isolate

    • locationbody · Location可选

      location

      • regionbody · string可选

        region

      • zonebody · string可选

        zone

      • campusbody · string可选

        campus

    • metadatabody · map<string,string>可选

      metadata

    • ctimebody · string可选

      ctime

    • mtimebody · string可选

      mtime

    • revisionbody · string可选

      revision

请求示例
curl -sS -X POST 'http://127.0.0.1:8090/naming/v1/instances/delete' \
  -H "Authorization: $TOKEN" \
  -H 'Content-Type: application/json' \
  -d '[{"id":"<instance-id>"}]'
响应示例
{
  "code": 200000,
  "info": "execute success",
  "amount": 1
}
GET/naming/v1/instances/labels需要鉴权

查询实例标签

查询服务下实例标签聚合。

  • Authorizationheader · string必填

    登录返回的 token。

  • servicequery · string必填

    服务名。

  • namespacequery · string必填

    命名空间。

请求示例
curl -sS 'http://127.0.0.1:8090/naming/v1/instances/labels?namespace=default&service=payment' \
  -H "Authorization: $TOKEN"
响应示例
{
  "code": 200000,
  "info": "execute success",
  "amount": 1
}
GET/naming/v1/instances/count需要鉴权

实例数量

实例数量。

  • Authorizationheader · string必填

    登录返回的 token。

请求示例
curl -sS -X GET 'http://127.0.0.1:8090/naming/v1/instances/count' \
  -H "Authorization: $TOKEN"
响应示例
{
  "code": 200000,
  "info": "execute success"
}

On this page