1.36. NetworkBaselineService


1.36.1. ModifyBaselineStatusForPeers

PATCH /v1/networkbaseline/{deploymentId}/peers

1.36.1.1. 描述

1.36.1.2. 参数

1.36.1.2.1. 路径参数
Name描述必填defaultpattern

deploymentId

 

X

null

 
1.36.1.2.2. 正文参数
Name描述必填defaultpattern

正文(body)

NetworkBaselineServiceModifyBaselineStatusForPeersBody

X

  

1.36.1.3. 返回类型

对象

1.36.1.4. 内容类型

  • application/json

1.36.1.5. 响应

表 1.161. HTTP 响应代码
代码消息datatype

200

成功响应。

对象

0

意外错误响应。

GooglerpcStatus

1.36.1.6. Samples

1.36.1.7. 常规对象参考

1.36.1.7.1. GooglerpcStatus
字段名称必填nullable类型描述格式

code

  

整数

 

int32

message

  

字符串

  

详情

  

ProtobufAny列表

  
1.36.1.7.2. NetworkBaselineServiceModifyBaselineStatusForPeersBody
字段名称必填nullable类型描述格式

peers

  

V1NetworkBaselinePeerStatus列表

  
1.36.1.7.3. ProtobufAny

any 包含任意序列化协议缓冲区消息,以及一个描述序列化消息的类型的 URL。

protobuf 库以实用程序函数形式提供对 pack/unpack Any 值的支持,或者对 Any 类型的其他生成的方法提供其他生成的方法。

示例 1: Pack 并在 C++ 中解包信息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:打包并解压缩 Java 消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

默认情况下,protobuf 库提供的软件包方法将使用 'type.googleapis.com/full.type.name' 作为类型 URL,解包方法只使用类型 URL 中的完全限定类型名称,如 "foo.bar.com/x/x/y.z"。

1.36.1.7.3.1. JSON 表示

any 值的 JSON 表示使用反序列化的、嵌入式消息的常规表示,以及包含类型 URL 的附加字段 @typeExample:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是知名且具有自定义 JSON 表示法,则该表示将被嵌入一个字段值,该值@type 字段外还包含自定义 JSON。示例(用于消息 [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称必填nullable类型描述格式

@type

  

字符串

唯一标识序列化协议缓冲消息的 URL/资源名称。此字符串必须至少包含一个 \"/\" 字符。URL 路径的最后一部分必须代表类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,未接受前面的 \".\")。在实践中,团队通常会预编译到期望其在任意上下文中使用的所有类型的二进制代码。但是,对于使用方案 httphttps 或无方案的 URL,可以选择设置一个类型服务器,将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假设 https。* URL 上的 HTTP GET 必须以二进制格式生成一个 [google.protobuf.Type][] 值,或者产生错误。* 应用程序允许根据 URL 缓存查找结果,或者预先编译到二进制文件以避免出现任何查找。因此,为了更改类型,二进制兼容性需要保留。(使用版本控制类型名称来管理中断的更改。)注意:这个功能目前在官方 protobuf 版本中可用,它不用于以 type.googleapis.com 开头的类型 URL。自 2023 年 5 月起,没有广泛使用的类型服务器实施,没有计划实施。http 之外的方案(或空方案)可以与实施特定语义一起使用。

 
1.36.1.7.4. StorageL4Protocol
Enum 值

L4_PROTOCOL_UNKNOWN

L4_PROTOCOL_TCP

L4_PROTOCOL_UDP

L4_PROTOCOL_ICMP

L4_PROTOCOL_RAW

L4_PROTOCOL_SCTP

L4_PROTOCOL_ANY

1.36.1.7.5. StorageNetworkEntityInfoType
  • INTERNAL_ENTITIES:INTERNAL_ENTITIES 用于在单一网络图形节点下对所有内部实体进行分组
Enum 值

UNKNOWN_TYPE

部署

互联网

LISTEN_ENDPOINT

EXTERNAL_SOURCE

INTERNAL_ENTITIES

1.36.1.7.6. V1NetworkBaselinePeerEntity
字段名称必填nullable类型描述格式

id

  

字符串

  

type

  

StorageNetworkEntityInfoType

 

UNKNOWN_TYPE, DEPLOYMENT, INTERNET, LISTEN_ENDPOINT, EXTERNAL_SOURCE, INTERNAL_ENTITIES,

1.36.1.7.7. V1NetworkBaselinePeerStatus
字段名称必填nullable类型描述格式

peer

  

V1NetworkBaselineStatusPeer

  

status

  

V1NetworkBaselinePeerStatusStatus

 

基线, 异常.

1.36.1.7.8. V1NetworkBaselinePeerStatusStatus
Status of this peer connection. As of now we only have two statuses:   - BASELINE: the connection is in the current deployment baseline   - ANOMALOUS: the connection is not recognized by the current deployment baseline
Enum 值

BASELINE

AOMALOUS

1.36.1.7.9. V1NetworkBaselineStatusPeer
字段名称必填nullable类型描述格式

实体

  

V1NetworkBaselinePeerEntity

  

port

  

Long

给定连接目的地的端口和协议。

int64

protocol

  

StorageL4Protocol

 

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

ingress

  

布尔值

代表查询是否用于入口连接或出口连接的布尔值。这根据当前部署定义。因此: - 如果问题中的连接位于当前部署的 outEdges 中,这应该是 false。- 如果它处于对等部署的 outEdges 中,则这应为 true。

 

1.36.2. GetNetworkBaselineStatusForFlows

POST /v1/networkbaseline/{deploymentId}/status

1.36.2.1. 描述

1.36.2.2. 参数

1.36.2.2.1. 路径参数
Name描述必填defaultpattern

deploymentId

 

X

null

 
1.36.2.2.2. 正文参数
Name描述必填defaultpattern

正文(body)

NetworkBaselineServiceGetNetworkBaselineStatusForFlowsBody

X

  

1.36.2.3. 返回类型

V1NetworkBaselineStatusResponse

1.36.2.4. 内容类型

  • application/json

1.36.2.5. 响应

表 1.162. HTTP 响应代码
代码消息datatype

200

成功响应。

V1NetworkBaselineStatusResponse

0

意外错误响应。

GooglerpcStatus

1.36.2.6. Samples

1.36.2.7. 常规对象参考

1.36.2.7.1. GooglerpcStatus
字段名称必填nullable类型描述格式

code

  

整数

 

int32

message

  

字符串

  

详情

  

ProtobufAny列表

  
1.36.2.7.2. NetworkBaselineServiceGetNetworkBaselineStatusForFlowsBody
字段名称必填nullable类型描述格式

peers

  

V1NetworkBaselineStatusPeer列表

  
1.36.2.7.3. ProtobufAny

any 包含任意序列化协议缓冲区消息,以及一个描述序列化消息的类型的 URL。

protobuf 库以实用程序函数形式提供对 pack/unpack Any 值的支持,或者对 Any 类型的其他生成的方法提供其他生成的方法。

示例 1: Pack 并在 C++ 中解包信息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:打包并解压缩 Java 消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

默认情况下,protobuf 库提供的软件包方法将使用 'type.googleapis.com/full.type.name' 作为类型 URL,解包方法只使用类型 URL 中的完全限定类型名称,如 "foo.bar.com/x/x/y.z"。

1.36.2.7.3.1. JSON 表示

any 值的 JSON 表示使用反序列化的、嵌入式消息的常规表示,以及包含类型 URL 的附加字段 @typeExample:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是知名且具有自定义 JSON 表示法,则该表示将被嵌入一个字段值,该值@type 字段外还包含自定义 JSON。示例(用于消息 [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称必填nullable类型描述格式

@type

  

字符串

唯一标识序列化协议缓冲消息的 URL/资源名称。此字符串必须至少包含一个 \"/\" 字符。URL 路径的最后一部分必须代表类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,未接受前面的 \".\")。在实践中,团队通常会预编译到期望其在任意上下文中使用的所有类型的二进制代码。但是,对于使用方案 httphttps 或无方案的 URL,可以选择设置一个类型服务器,将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假设 https。* URL 上的 HTTP GET 必须以二进制格式生成一个 [google.protobuf.Type][] 值,或者产生错误。* 应用程序允许根据 URL 缓存查找结果,或者预先编译到二进制文件以避免出现任何查找。因此,为了更改类型,二进制兼容性需要保留。(使用版本控制类型名称来管理中断的更改。)注意:这个功能目前在官方 protobuf 版本中可用,它不用于以 type.googleapis.com 开头的类型 URL。自 2023 年 5 月起,没有广泛使用的类型服务器实施,没有计划实施。http 之外的方案(或空方案)可以与实施特定语义一起使用。

 
1.36.2.7.4. StorageL4Protocol
Enum 值

L4_PROTOCOL_UNKNOWN

L4_PROTOCOL_TCP

L4_PROTOCOL_UDP

L4_PROTOCOL_ICMP

L4_PROTOCOL_RAW

L4_PROTOCOL_SCTP

L4_PROTOCOL_ANY

1.36.2.7.5. StorageNetworkEntityInfoType
  • INTERNAL_ENTITIES:INTERNAL_ENTITIES 用于在单一网络图形节点下对所有内部实体进行分组
Enum 值

UNKNOWN_TYPE

部署

互联网

LISTEN_ENDPOINT

EXTERNAL_SOURCE

INTERNAL_ENTITIES

1.36.2.7.6. V1NetworkBaselinePeerEntity
字段名称必填nullable类型描述格式

id

  

字符串

  

type

  

StorageNetworkEntityInfoType

 

UNKNOWN_TYPE, DEPLOYMENT, INTERNET, LISTEN_ENDPOINT, EXTERNAL_SOURCE, INTERNAL_ENTITIES,

1.36.2.7.7. V1NetworkBaselinePeerStatus
字段名称必填nullable类型描述格式

peer

  

V1NetworkBaselineStatusPeer

  

status

  

V1NetworkBaselinePeerStatusStatus

 

基线, 异常.

1.36.2.7.8. V1NetworkBaselinePeerStatusStatus
Status of this peer connection. As of now we only have two statuses:   - BASELINE: the connection is in the current deployment baseline   - ANOMALOUS: the connection is not recognized by the current deployment baseline
Enum 值

BASELINE

AOMALOUS

1.36.2.7.9. V1NetworkBaselineStatusPeer
字段名称必填nullable类型描述格式

实体

  

V1NetworkBaselinePeerEntity

  

port

  

Long

给定连接目的地的端口和协议。

int64

protocol

  

StorageL4Protocol

 

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

ingress

  

布尔值

代表查询是否用于入口连接或出口连接的布尔值。这根据当前部署定义。因此: - 如果问题中的连接位于当前部署的 outEdges 中,这应该是 false。- 如果它处于对等部署的 outEdges 中,则这应为 true。

 
1.36.2.7.10. V1NetworkBaselineStatusResponse
字段名称必填nullable类型描述格式

状态

  

V1NetworkBaselinePeerStatus列表

  

1.36.3. GetNetworkBaseline

GET /v1/networkbaseline/{id}

1.36.3.1. 描述

1.36.3.2. 参数

1.36.3.2.1. 路径参数
Name描述必填defaultpattern

id

 

X

null

 

1.36.3.3. 返回类型

StorageNetworkBaseline

1.36.3.4. 内容类型

  • application/json

1.36.3.5. 响应

表 1.163. HTTP 响应代码
代码消息datatype

200

成功响应。

StorageNetworkBaseline

0

意外错误响应。

GooglerpcStatus

1.36.3.6. Samples

1.36.3.7. 常规对象参考

1.36.3.7.1. DeploymentListenPort
字段名称必填nullable类型描述格式

port

  

Long

 

int64

l4protocol

  

StorageL4Protocol

 

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

1.36.3.7.2. GooglerpcStatus
字段名称必填nullable类型描述格式

code

  

整数

 

int32

message

  

字符串

  

详情

  

ProtobufAny列表

  
1.36.3.7.3. NetworkEntityInfoExternalSource

每当更新此消息时,更新 central/networkgraph/aggregator/aggregator.go 中的 normalizeDupNameExtSrcs (…​)。

字段名称必填nullable类型描述格式

name

  

字符串

  

cidr

  

字符串

  

default

  

布尔值

default 指示外部源是用户生成的还是系统生成的。

 

Discoveredd

  

布尔值

Discovered d 表示外部源是否来自受监控的流量。

 
1.36.3.7.4. ProtobufAny

any 包含任意序列化协议缓冲区消息,以及一个描述序列化消息的类型的 URL。

protobuf 库以实用程序函数形式提供对 pack/unpack Any 值的支持,或者对 Any 类型的其他生成的方法提供其他生成的方法。

示例 1: Pack 并在 C++ 中解包信息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:打包并解压缩 Java 消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

默认情况下,protobuf 库提供的软件包方法将使用 'type.googleapis.com/full.type.name' 作为类型 URL,解包方法只使用类型 URL 中的完全限定类型名称,如 "foo.bar.com/x/x/y.z"。

1.36.3.7.4.1. JSON 表示

any 值的 JSON 表示使用反序列化的、嵌入式消息的常规表示,以及包含类型 URL 的附加字段 @typeExample:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是知名且具有自定义 JSON 表示法,则该表示将被嵌入一个字段值,该值@type 字段外还包含自定义 JSON。示例(用于消息 [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称必填nullable类型描述格式

@type

  

字符串

唯一标识序列化协议缓冲消息的 URL/资源名称。此字符串必须至少包含一个 \"/\" 字符。URL 路径的最后一部分必须代表类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,未接受前面的 \".\")。在实践中,团队通常会预编译到期望其在任意上下文中使用的所有类型的二进制代码。但是,对于使用方案 httphttps 或无方案的 URL,可以选择设置一个类型服务器,将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假设 https。* URL 上的 HTTP GET 必须以二进制格式生成一个 [google.protobuf.Type][] 值,或者产生错误。* 应用程序允许根据 URL 缓存查找结果,或者预先编译到二进制文件以避免出现任何查找。因此,为了更改类型,二进制兼容性需要保留。(使用版本控制类型名称来管理中断的更改。)注意:这个功能目前在官方 protobuf 版本中可用,它不用于以 type.googleapis.com 开头的类型 URL。自 2023 年 5 月起,没有广泛使用的类型服务器实施,没有计划实施。http 之外的方案(或空方案)可以与实施特定语义一起使用。

 
1.36.3.7.5. StorageL4Protocol
Enum 值

L4_PROTOCOL_UNKNOWN

L4_PROTOCOL_TCP

L4_PROTOCOL_UDP

L4_PROTOCOL_ICMP

L4_PROTOCOL_RAW

L4_PROTOCOL_SCTP

L4_PROTOCOL_ANY

1.36.3.7.6. StorageNetworkBaseline
NetworkBaseline represents a network baseline of a deployment. It contains all the baseline peers and their respective connections. next available tag: 8
字段名称必填nullable类型描述格式

deploymentId

  

字符串

这是基线的 ID。

 

clusterId

  

字符串

  

namespace

  

字符串

  

peers

  

StorageNetworkBaselinePeer列表

  

forbiddenPeers

  

StorageNetworkBaselinePeer列表

从未添加到基线的对等点列表。现在,这包含用户手动删除的对等点。这用于确保在我们再次看到流时不会重新添加它。

 

observationPeriodEnd

  

Date

 

date-time

locked

  

布尔值

  

deploymentName

  

字符串

  
1.36.3.7.7. StorageNetworkBaselineConnectionProperties
NetworkBaselineConnectionProperties represents information about a baseline connection next available tag: 4
字段名称必填nullable类型描述格式

ingress

  

布尔值

  

port

  

Long

 

int64

protocol

  

StorageL4Protocol

 

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

1.36.3.7.8. StorageNetworkBaselinePeer
NetworkBaselinePeer represents a baseline peer. next available tag: 3
字段名称必填nullable类型描述格式

实体

  

StorageNetworkEntity

  

属性

  

StorageNetworkBaselineConnectionProperties列表

  
1.36.3.7.9. StorageNetworkEntity
字段名称必填nullable类型描述格式

info

  

StorageNetworkEntityInfo

  

scope

  

StorageNetworkEntityScope

  
1.36.3.7.10. StorageNetworkEntityInfo
字段名称必填nullable类型描述格式

type

  

StorageNetworkEntityInfoType

 

UNKNOWN_TYPE, DEPLOYMENT, INTERNET, LISTEN_ENDPOINT, EXTERNAL_SOURCE, INTERNAL_ENTITIES,

id

  

字符串

  

部署

  

StorageNetworkEntityInfoDeployment

  

externalSource

  

NetworkEntityInfoExternalSource

  
1.36.3.7.11. StorageNetworkEntityInfoDeployment
字段名称必填nullable类型描述格式

name

  

字符串

  

namespace

  

字符串

  

cluster

  

字符串

  

listenPorts

  

DeploymentListenPort列表

  
1.36.3.7.12. StorageNetworkEntityInfoType
  • INTERNAL_ENTITIES:INTERNAL_ENTITIES 用于在单一网络图形节点下对所有内部实体进行分组
Enum 值

UNKNOWN_TYPE

部署

互联网

LISTEN_ENDPOINT

EXTERNAL_SOURCE

INTERNAL_ENTITIES

1.36.3.7.13. StorageNetworkEntityScope
字段名称必填nullable类型描述格式

clusterId

  

字符串

  

1.36.4. LockNetworkBaseline

PATCH /v1/networkbaseline/{id}/lock

1.36.4.1. 描述

1.36.4.2. 参数

1.36.4.2.1. 路径参数
Name描述必填defaultpattern

id

 

X

null

 
1.36.4.2.2. 正文参数
Name描述必填defaultpattern

正文(body)

object

X

  

1.36.4.3. 返回类型

对象

1.36.4.4. 内容类型

  • application/json

1.36.4.5. 响应

表 1.164. HTTP 响应代码
代码消息datatype

200

成功响应。

对象

0

意外错误响应。

GooglerpcStatus

1.36.4.6. Samples

1.36.4.7. 常规对象参考

1.36.4.7.1. GooglerpcStatus
字段名称必填nullable类型描述格式

code

  

整数

 

int32

message

  

字符串

  

详情

  

ProtobufAny列表

  
1.36.4.7.2. ProtobufAny

any 包含任意序列化协议缓冲区消息,以及一个描述序列化消息的类型的 URL。

protobuf 库以实用程序函数形式提供对 pack/unpack Any 值的支持,或者对 Any 类型的其他生成的方法提供其他生成的方法。

示例 1: Pack 并在 C++ 中解包信息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:打包并解压缩 Java 消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

默认情况下,protobuf 库提供的软件包方法将使用 'type.googleapis.com/full.type.name' 作为类型 URL,解包方法只使用类型 URL 中的完全限定类型名称,如 "foo.bar.com/x/x/y.z"。

1.36.4.7.2.1. JSON 表示

any 值的 JSON 表示使用反序列化的、嵌入式消息的常规表示,以及包含类型 URL 的附加字段 @typeExample:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是知名且具有自定义 JSON 表示法,则该表示将被嵌入一个字段值,该值@type 字段外还包含自定义 JSON。示例(用于消息 [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称必填nullable类型描述格式

@type

  

字符串

唯一标识序列化协议缓冲消息的 URL/资源名称。此字符串必须至少包含一个 \"/\" 字符。URL 路径的最后一部分必须代表类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,未接受前面的 \".\")。在实践中,团队通常会预编译到期望其在任意上下文中使用的所有类型的二进制代码。但是,对于使用方案 httphttps 或无方案的 URL,可以选择设置一个类型服务器,将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假设 https。* URL 上的 HTTP GET 必须以二进制格式生成一个 [google.protobuf.Type][] 值,或者产生错误。* 应用程序允许根据 URL 缓存查找结果,或者预先编译到二进制文件以避免出现任何查找。因此,为了更改类型,二进制兼容性需要保留。(使用版本控制类型名称来管理中断的更改。)注意:这个功能目前在官方 protobuf 版本中可用,它不用于以 type.googleapis.com 开头的类型 URL。自 2023 年 5 月起,没有广泛使用的类型服务器实施,没有计划实施。http 之外的方案(或空方案)可以与实施特定语义一起使用。

 

1.36.5. UnlockNetworkBaseline

PATCH /v1/networkbaseline/{id}/unlock

1.36.5.1. 描述

1.36.5.2. 参数

1.36.5.2.1. 路径参数
Name描述必填defaultpattern

id

 

X

null

 
1.36.5.2.2. 正文参数
Name描述必填defaultpattern

正文(body)

object

X

  

1.36.5.3. 返回类型

对象

1.36.5.4. 内容类型

  • application/json

1.36.5.5. 响应

表 1.165. HTTP 响应代码
代码消息datatype

200

成功响应。

对象

0

意外错误响应。

GooglerpcStatus

1.36.5.6. Samples

1.36.5.7. 常规对象参考

1.36.5.7.1. GooglerpcStatus
字段名称必填nullable类型描述格式

code

  

整数

 

int32

message

  

字符串

  

详情

  

ProtobufAny列表

  
1.36.5.7.2. ProtobufAny

any 包含任意序列化协议缓冲区消息,以及一个描述序列化消息的类型的 URL。

protobuf 库以实用程序函数形式提供对 pack/unpack Any 值的支持,或者对 Any 类型的其他生成的方法提供其他生成的方法。

示例 1: Pack 并在 C++ 中解包信息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:打包并解压缩 Java 消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

默认情况下,protobuf 库提供的软件包方法将使用 'type.googleapis.com/full.type.name' 作为类型 URL,解包方法只使用类型 URL 中的完全限定类型名称,如 "foo.bar.com/x/x/y.z"。

1.36.5.7.2.1. JSON 表示

any 值的 JSON 表示使用反序列化的、嵌入式消息的常规表示,以及包含类型 URL 的附加字段 @typeExample:

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是知名且具有自定义 JSON 表示法,则该表示将被嵌入一个字段值,该值@type 字段外还包含自定义 JSON。示例(用于消息 [google.protobuf.Duration][]):

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称必填nullable类型描述格式

@type

  

字符串

唯一标识序列化协议缓冲消息的 URL/资源名称。此字符串必须至少包含一个 \"/\" 字符。URL 路径的最后一部分必须代表类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,未接受前面的 \".\")。在实践中,团队通常会预编译到期望其在任意上下文中使用的所有类型的二进制代码。但是,对于使用方案 httphttps 或无方案的 URL,可以选择设置一个类型服务器,将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假设 https。* URL 上的 HTTP GET 必须以二进制格式生成一个 [google.protobuf.Type][] 值,或者产生错误。* 应用程序允许根据 URL 缓存查找结果,或者预先编译到二进制文件以避免出现任何查找。因此,为了更改类型,二进制兼容性需要保留。(使用版本控制类型名称来管理中断的更改。)注意:这个功能目前在官方 protobuf 版本中可用,它不用于以 type.googleapis.com 开头的类型 URL。自 2023 年 5 月起,没有广泛使用的类型服务器实施,没有计划实施。http 之外的方案(或空方案)可以与实施特定语义一起使用。

 
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.