<QGrpcInterceptor> - Interceptor types
<QGrpcInterceptor> 头文件提供了基本的拦截器类型。更多内容...
| Header: | #include <QGrpcInterceptor> |
| Since: | Qt 6.11 |
类型
(since 6.11) flags | InterceptorCapabilities |
(since 6.11) enum class | InterceptorCapability { Start, InitialMetadata, MessageReceived, WriteMessage, WritesDone, …, Cancel } |
详细说明
Qt GRPC 提供了各种类型,这些类型通常汇总在<QtGrpcInterceptor> 头文件中。
有关拦截机制的介绍以及拦截器接口如何参与 RPC 生命周期的说明,请参阅《Qt GRPC 拦截器概述》。
Qt GRPC 提供了以下拦截器接口,作为 RPC 生命周期中的挂钩点:
| 接口 | 挂钩点 | 方向 | 可修改 |
|---|---|---|---|
| QGrpcStartInterceptor | RPC 发起之前 | 出站 | 初始消息对象、调用选项 |
| QGrpcWriteMessageInterceptor | 在写入出站消息之前 | 出站 | 消息对象 |
| QGrpcWritesDoneInterceptor | 当客户端指示写入完成时 | 出站 | — |
| QGrpcCancelInterceptor | 当 RPC 被取消时 | 出站 | — |
| QGrpcInitialMetadataInterceptor | 收到初始元数据时 | 入站 | 元数据 |
| QGrpcMessageReceivedInterceptor | 收到消息负载时 | 入站 | 序列化后的消息数据 |
| QGrpcTrailingMetadataInterceptor | 当接收到尾部元数据时 | 入站 | 元数据 |
| QGrpcFinishedInterceptor | 当 RPC 完成时 | 入站 | 最终状态 |
拦截器机制
以下类和页面构成了Qt GRPC 拦截器机制:
- QGrpcCancelInterceptor
- QGrpcFinishedInterceptor
- QGrpcInitialMetadataInterceptor
- QGrpcInterceptionContext
- QGrpcInterceptorChain
- QGrpcMessageReceivedInterceptor
- QGrpcStartInterceptor
- QGrpcTrailingMetadataInterceptor
- QGrpcWriteMessageInterceptor
- QGrpcWritesDoneInterceptor
- Qt GRPC Interceptors Overview
- QGrpcStartInterceptor::Continuation
- InterceptorCapability
- InterceptorCapabilities
类型文档
[since 6.11] enum class InterceptorCapability
[since 6.11] flags InterceptorCapabilities
指定拦截器支持的拦截挂钩点。
Qt GRPC 使用 InterceptorCapability 值来描述拦截器提供了哪些拦截钩点。
一个拦截器类可以实现多个拦截器接口(例如,QGrpcStartInterceptor 和QGrpcFinishedInterceptor ),因此支持多种功能。
| 常量 | 值 | 描述 |
|---|---|---|
InterceptorCapability::Start | 0x01 | 该拦截器实现了QGrpcStartInterceptor 。 |
InterceptorCapability::InitialMetadata | 0x02 | 该拦截器实现了QGrpcInitialMetadataInterceptor 。该拦截器实现了 。 |
InterceptorCapability::MessageReceived | 0x04 | 该拦截器实现了QGrpcMessageReceivedInterceptor 。 |
InterceptorCapability::WriteMessage | 0x08 | 该拦截器实现了QGrpcWriteMessageInterceptor 。 |
InterceptorCapability::WritesDone | 0x10 | 该拦截器实现了QGrpcWritesDoneInterceptor 。 |
InterceptorCapability::TrailingMetadata | 0x20 | 该拦截器实现了QGrpcTrailingMetadataInterceptor 。 |
InterceptorCapability::Finished | 0x40 | 该拦截器实现了QGrpcFinishedInterceptor 。 |
InterceptorCapability::Cancel | 0x80 | 该拦截器实现了QGrpcCancelInterceptor 。 |
该枚举类型在 Qt 6.11 中引入。
InterceptorCapabilities 类型是QFlags<InterceptorCapability> 的 typedef。它存储 InterceptorCapability 值的“或”组合。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.