En esta página

QGrpcCallOptions Class

La clase QGrpcCallOptions ofrece varias opciones para ajustar RPCs individuales. Más...

Cabecera: #include <QGrpcCallOptions>
CMake: find_package(Qt6 REQUIRED COMPONENTS Grpc)
target_link_libraries(mytarget PRIVATE Qt6::Grpc)
Desde: Qt 6.6
En QML: GrpcCallOptions

Esta clase es igual-comparable.

Funciones públicas

QGrpcCallOptions()
QGrpcCallOptions(const QGrpcCallOptions &other)
QGrpcCallOptions(QGrpcCallOptions &&other)
~QGrpcCallOptions()
(since 6.10) QGrpcCallOptions &addMetadata(QByteArrayView key, QByteArrayView value)
std::optional<std::chrono::milliseconds> deadlineTimeout() const
(since 6.11) std::optional<bool> filterServerMetadata() const
(until 6.13) QHash<QByteArray, QByteArray> metadata() &&
(until 6.13) const QHash<QByteArray, QByteArray> &metadata() const &
(since 6.10) QMultiHash<QByteArray, QByteArray> metadata(QtGrpc::MultiValue_t) &&
(since 6.10) const QMultiHash<QByteArray, QByteArray> &metadata(QtGrpc::MultiValue_t) const &
QGrpcCallOptions &setDeadlineTimeout(std::chrono::milliseconds timeout)
(since 6.11) QGrpcCallOptions &setFilterServerMetadata(bool value)
(until 6.13) QGrpcCallOptions &setMetadata(QHash<QByteArray, QByteArray> &&metadata)
(since 6.10) QGrpcCallOptions &setMetadata(QMultiHash<QByteArray, QByteArray> &&metadata)
(until 6.13) QGrpcCallOptions &setMetadata(const QHash<QByteArray, QByteArray> &metadata)
(since 6.10) QGrpcCallOptions &setMetadata(const QMultiHash<QByteArray, QByteArray> &metadata)
(since 6.10) QGrpcCallOptions &setMetadata(std::initializer_list<std::pair<QByteArray, QByteArray>> metadata)
(since 6.8) void swap(QGrpcCallOptions &other)
(since 6.8) operator QVariant() const
QGrpcCallOptions &operator=(QGrpcCallOptions &&other)
QGrpcCallOptions &operator=(const QGrpcCallOptions &other)
(since 6.11) bool operator!=(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)
(since 6.8) QDebug operator<<(QDebug debug, const QGrpcCallOptions &callOpts)
(since 6.11) bool operator==(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)

Descripción detallada

QGrpcCallOptions permite personalizar llamadas a procedimientos remotos (RPCs) individuales. La interfaz de cliente generada proporciona puntos de acceso para pasar las QGrpcCallOptions. Estas opciones sustituyen a las establecidas a través de QGrpcChannelOptions.

Para configurar las opciones por defecto compartidas por las RPCs, utilice QGrpcChannelOptions.

QGrpcCallOptions callOpts;// Establecer los metadatos para una RPC individualcallOpts.setMetadata({ { "header" , "value1" },{ "header" , "value2" },});const auto &md = callOpts.metadata(QtGrpc::MultiValue);qDebug() << "Call Metadata: " << md;

// Establecer un plazo de 2 segundos para una RPCindividual callOpts.setDeadlineTimeout(2s);qDebug() << "Call timeout: " << callOpts.deadlineTimeout();

Documentación de las funciones miembro

QGrpcCallOptions::QGrpcCallOptions()

Default-construye un QGrpcCallOptions vacío.

QGrpcCallOptions::QGrpcCallOptions(const QGrpcCallOptions &other)

Copia-construye un QGrpcCallOptions de other.

[constexpr noexcept] QGrpcCallOptions::QGrpcCallOptions(QGrpcCallOptions &&other)

Move-construye un nuevo QGrpcCallOptions a partir de other.

Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.

[noexcept] QGrpcCallOptions::~QGrpcCallOptions()

Destruye el QGrpcCallOptions.

[since 6.10] QGrpcCallOptions &QGrpcCallOptions::addMetadata(QByteArrayView key, QByteArrayView value)

Añade key y value a metadata si el par exacto no está ya contenido. La misma clave puede aparecer varias veces con valores diferentes.

Nota: QGrpcHttp2Channel transporta metadatos como cabeceras HTTP/2. Las claves son cadenas ASCII que no distinguen mayúsculas de minúsculas. Debe evitar utilizar los prefijos internos: : (pseudocabecera), grpc-, o qtgrpc-. Los valores pueden ser cadenas ASCII o datos binarios. Para más información, consulte RFC 7540, Sección 8.1.2.

Nota: Los metadatos de llamada se fusionan con cualquier metadato a nivel de canal cuando se inicia la RPC - ver QGrpcChannelOptions::addMetadata()

Esta función se introdujo en Qt 6.10.

Véase también metadata() y setMetadata().

[noexcept] std::optional<std::chrono::milliseconds> QGrpcCallOptions::deadlineTimeout() const

Devuelve la duración del tiempo de espera que se utiliza para calcular el plazo de las RPC.

Si este campo no está establecido, devuelve un std::optional vacío.

Véase también setDeadlineTimeout().

[noexcept, since 6.11] std::optional<bool> QGrpcCallOptions::filterServerMetadata() const

Devuelve true si se excluyen del resultado los metadatos del servidor relacionados con el protocolo. Devuelve false si se incluyen todos los metadatos recibidos del servidor.

Si este campo no está establecido, devuelve un std::optional vacío.

Esta función se introdujo en Qt 6.11.

Véase también setFilterServerMetadata() y QGrpcChannelOptions::filterServerMetadata().

[noexcept, until 6.13] const QHash<QByteArray, QByteArray> &QGrpcCallOptions::metadata() const &

[until 6.13] QHash<QByteArray, QByteArray> QGrpcCallOptions::metadata() &&

Esta función quedará obsoleta en la versión 6.13.

Utilice en su lugar la sobrecarga QMultiHash.

Devuelve los metadatos. Si este campo no está establecido, devuelve metadatos vacíos.

Nota: QGrpcHttp2Channel transporta los metadatos como cabeceras HTTP/2. Las claves son cadenas ASCII que no distinguen mayúsculas de minúsculas. Debe evitar utilizar los prefijos internos: : (pseudocabecera), grpc-, o qtgrpc-. Los valores pueden ser cadenas ASCII o datos binarios. Para más información, véase RFC 7540, Sección 8.1.2.

Véase también setMetadata().

[noexcept, since 6.10] const QMultiHash<QByteArray, QByteArray> &QGrpcCallOptions::metadata(QtGrpc::MultiValue_t) const &

[since 6.10] QMultiHash<QByteArray, QByteArray> QGrpcCallOptions::metadata(QtGrpc::MultiValue_t) &&

Devuelve los metadatos. Si este campo no está configurado, devuelve metadatos vacíos.

Nota: QGrpcHttp2Channel transporta los metadatos como cabeceras HTTP/2. Las claves son cadenas ASCII que no distinguen mayúsculas de minúsculas. Debe evitar utilizar los prefijos internos: : (pseudocabecera), grpc-, o qtgrpc-. Los valores pueden ser cadenas ASCII o datos binarios. Para más información, consulte RFC 7540, Sección 8.1.2. Se admiten múltiples valores por tecla.

const auto &md = opts.metadata(QtGrpc::MultiValue);

Estas funciones se introdujeron en Qt 6.10.

Véase también setMetadata.

QGrpcCallOptions &QGrpcCallOptions::setDeadlineTimeout(std::chrono::milliseconds timeout)

Establece el timeout y devuelve una referencia al objeto actualizado.

Una fecha límite establece el límite de tiempo que un cliente está dispuesto a esperar una respuesta de un servidor. El plazo real se calcula sumando timeout a la hora de inicio de la RPC.

La fecha límite se aplica a todo el tiempo de vida de una RPC, que incluye la recepción de la QGrpcStatus final para una llamada iniciada previamente y, por lo tanto, puede ser no deseada para flujos (de larga duración).

Nota: La configuración de este campo anula el campo de opciones de canal correspondiente - véase QGrpcChannelOptions::setDeadlineTimeout()

Véase también deadlineTimeout().

[since 6.11] QGrpcCallOptions &QGrpcCallOptions::setFilterServerMetadata(bool value)

Si value es true, se excluirán los metadatos relacionados con el protocolo definidos por el transporte gRPC (como las claves reservadas grpc- ). Si value es false, se incluirán todos los metadatos recibidos del servidor.

*/ void QGrpcCommonOptions::setFilterServerMetadata(bool value) { m_filterServerMetadata = value; }

QT_END_NAMESPACE

Nota: Establecer este campo anula el campo de opciones del canal correspondiente - ver QGrpcChannelOptions::setFilterServerMetadata()

Esta función se introdujo en Qt 6.11.

Véase también filterServerMetadata() y QGrpcChannelOptions::setFilterServerMetadata().

[until 6.13] QGrpcCallOptions &QGrpcCallOptions::setMetadata(const QHash<QByteArray, QByteArray> &metadata)

[until 6.13] QGrpcCallOptions &QGrpcCallOptions::setMetadata(QHash<QByteArray, QByteArray> &&metadata)

Esta función quedará obsoleta en la versión 6.13.

Utilice en su lugar la sobrecarga QMultiHash.

Establece metadata y devuelve una referencia al objeto actualizado.

Nota: QGrpcHttp2Channel transporta metadatos como cabeceras HTTP/2. Las claves son cadenas ASCII que no distinguen mayúsculas de minúsculas. Debe evitar utilizar los prefijos internos: : (pseudocabecera), grpc-, o qtgrpc-. Los valores pueden ser cadenas ASCII o datos binarios. Para más información, consulte RFC 7540, Sección 8.1.2.

Nota: Los metadatos de llamada se fusionan con cualquier metadato a nivel de canal cuando se inicia la RPC - ver QGrpcChannelOptions::setMetadata(QMultiHash).

Véase también metadata().

[since 6.10] QGrpcCallOptions &QGrpcCallOptions::setMetadata(const QMultiHash<QByteArray, QByteArray> &metadata)

[since 6.10] QGrpcCallOptions &QGrpcCallOptions::setMetadata(QMultiHash<QByteArray, QByteArray> &&metadata)

[since 6.10] QGrpcCallOptions &QGrpcCallOptions::setMetadata(std::initializer_list<std::pair<QByteArray, QByteArray>> metadata)

Establece metadata y devuelve una referencia al objeto actualizado.

Nota: QGrpcHttp2Channel transporta metadatos como cabeceras HTTP/2. Las claves son cadenas ASCII que no distinguen mayúsculas de minúsculas. Debe evitar utilizar los prefijos internos: : (pseudocabecera), grpc-, o qtgrpc-. Los valores pueden ser cadenas ASCII o datos binarios. Para más información, consulte RFC 7540, Sección 8.1.2. Se admiten múltiples valores por clave.

Nota: Los metadatos de llamada se fusionan con cualquier metadato a nivel de canal cuando se inicia la RPC - ver QGrpcChannelOptions::setMetadata(QMultiHash).

Estas funciones se introdujeron en Qt 6.10.

Ver también metadata(QtGrpc::MultiValue_t).

[noexcept, since 6.8] void QGrpcCallOptions::swap(QGrpcCallOptions &other)

Intercambia other con este objeto. Esta operación es muy rápida y nunca falla.

Esta función se introdujo en Qt 6.8.

[since 6.8] QGrpcCallOptions::operator QVariant() const

Construye un nuevo QVariant a partir de este objeto.

Esta función se introdujo en Qt 6.8.

[noexcept] QGrpcCallOptions &QGrpcCallOptions::operator=(QGrpcCallOptions &&other)

Mover-asigna other a este QGrpcCallOptions y devuelve una referencia al objeto actualizado.

Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.

QGrpcCallOptions &QGrpcCallOptions::operator=(const QGrpcCallOptions &other)

Asigna other a este QGrpcCallOptions y devuelve una referencia al objeto actualizado.

No miembros relacionados

[noexcept, since 6.11] bool operator!=(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)

Devuelve true si deadlineTimeout, filterServerMetadata y metadata(QtGrpc::MultiValue_t) en lhs y rhs no son iguales.

Esta función se introdujo en Qt 6.11.

[since 6.8] QDebug operator<<(QDebug debug, const QGrpcCallOptions &callOpts)

Escribe callOpts en el flujo especificado debug.

Esta función se introdujo en Qt 6.8.

[noexcept, since 6.11] bool operator==(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)

Devuelve true si deadlineTimeout, filterServerMetadata y metadata(QtGrpc::MultiValue_t) en lhs y rhs son iguales.

Esta función se introdujo en Qt 6.11.

© 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.