QGrpcCallOptions Class
La classe QGrpcCallOptions offre diverses options permettant d'affiner les différentes RPC. Plus d'informations...
| En-tête : | #include <QGrpcCallOptions> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Grpc)target_link_libraries(mytarget PRIVATE Qt6::Grpc) |
| Depuis : | Qt 6.6 |
| En QML : | GrpcCallOptions |
Cette classe est comparable à l'égalité.
Fonctions publiques
| 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) |
Non-membres apparentés
(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) |
Description détaillée
QGrpcCallOptions vous permet de personnaliser des appels de procédure à distance (RPC) individuels. L'interface client générée fournit des points d'accès pour passer les QGrpcCallOptions. Ces options remplacent celles définies via QGrpcChannelOptions.
Pour configurer les options par défaut partagées par les RPC, utilisez QGrpcChannelOptions.
QGrpcCallOptions callOpts ;// Définir les métadonnées pour une RPC individuellecallOpts.setMetadata({ { "header" , "value1" },{ "header" , "value2" },}) ;const auto &md = callOpts.metadata(QtGrpc::MultiValue) ;qDebug() << "Call Metadata: " << md; // Fixer un délai de 2 secondes pour unappel RPC individuelcallOpts.setDeadlineTimeout(2s) ;qDebug() << "Call timeout: " << callOpts.deadlineTimeout();
Documentation des fonctions membres
QGrpcCallOptions::QGrpcCallOptions()
Default-construit un QGrpcCallOptions vide.
QGrpcCallOptions::QGrpcCallOptions(const QGrpcCallOptions &other)
Copy-construit un QGrpcCallOptions à partir de other.
[constexpr noexcept] QGrpcCallOptions::QGrpcCallOptions(QGrpcCallOptions &&other)
Move-construit un nouveau QGrpcCallOptions à partir de other.
Remarque : l'objet déplacé other est placé dans un état partiellement formé, dans lequel les seules opérations valables sont la destruction et l'attribution d'une nouvelle valeur.
[noexcept] QGrpcCallOptions::~QGrpcCallOptions()
Détruit le site QGrpcCallOptions.
[since 6.10] QGrpcCallOptions &QGrpcCallOptions::addMetadata(QByteArrayView key, QByteArrayView value)
Ajoute key et value à metadata si la paire exacte n'est pas déjà contenue. La même clé peut apparaître plusieurs fois avec des valeurs différentes.
Remarque : QGrpcHttp2Channel transporte les métadonnées sous forme d'en-têtes HTTP/2. Les clés sont des chaînes ASCII insensibles à la casse. Vous devez éviter d'utiliser les préfixes internes : : (pseudo-en-tête), grpc- ou qtgrpc-. Les valeurs peuvent être des chaînes ASCII ou des données binaires. Pour plus d'informations, voir RFC 7540, section 8.1.2.
Remarque : les métadonnées d'appel sont fusionnées avec toutes les métadonnées au niveau du canal lorsque la RPC démarre - voir QGrpcChannelOptions::addMetadata()
Cette fonction a été introduite dans Qt 6.10.
Voir aussi metadata() et setMetadata().
[noexcept] std::optional<std::chrono::milliseconds> QGrpcCallOptions::deadlineTimeout() const
Renvoie le délai d'attente utilisé pour calculer l'échéance des RPC.
Si ce champ n'est pas défini, il renvoie une valeur vide std::optional.
Voir aussi setDeadlineTimeout().
[noexcept, since 6.11] std::optional<bool> QGrpcCallOptions::filterServerMetadata() const
Renvoie true si les métadonnées du serveur liées au protocole sont exclues du résultat. Renvoie false pour inclure toutes les métadonnées reçues du serveur.
Si ce champ n'est pas défini, il renvoie une adresse vide std::optional.
Cette fonction a été introduite dans Qt 6.11.
Voir aussi setFilterServerMetadata() et QGrpcChannelOptions::filterServerMetadata().
[noexcept, until 6.13] const QHash<QByteArray, QByteArray> &QGrpcCallOptions::metadata() const &
[until 6.13] QHash<QByteArray, QByteArray> QGrpcCallOptions::metadata() &&
Cette fonction sera obsolète à partir de la version 6.13.
Utilisez la surcharge QMultiHash à la place.
Renvoie les métadonnées. Si ce champ n'est pas défini, il renvoie des métadonnées vides.
Remarque : QGrpcHttp2Channel transporte les métadonnées sous forme d'en-têtes HTTP/2. Les clés sont des chaînes ASCII insensibles à la casse. Vous devez éviter d'utiliser les préfixes internes : : (pseudo-en-tête), grpc- ou qtgrpc-. Les valeurs peuvent être des chaînes ASCII ou des données binaires. Pour plus d'informations, voir RFC 7540, section 8.1.2.
Voir aussi 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) &&
Renvoie les métadonnées. Si ce champ n'est pas défini, il renvoie des métadonnées vides.
Remarque : QGrpcHttp2Channel transporte les métadonnées sous forme d'en-têtes HTTP/2. Les clés sont des chaînes ASCII insensibles à la casse. Vous devez éviter d'utiliser les préfixes internes : : (pseudo-en-tête), grpc- ou qtgrpc-. Les valeurs peuvent être des chaînes ASCII ou des données binaires. Pour plus d'informations, voir RFC 7540, section 8.1.2. Plusieurs valeurs par clé sont prises en charge.
const auto &md = opts.metadata(QtGrpc::MultiValue);
Ces fonctions ont été introduites dans Qt 6.10.
Voir aussi setMetadata.
QGrpcCallOptions &QGrpcCallOptions::setDeadlineTimeout(std::chrono::milliseconds timeout)
Définit l'adresse timeout et renvoie une référence à l'objet mis à jour.
Un délai fixe la limite de temps pendant laquelle un client est prêt à attendre une réponse d'un serveur. Le délai réel est calculé en ajoutant timeout à l'heure de début de la RPC.
Le délai s'applique à toute la durée de vie d'une RPC, ce qui inclut la réception de la dernière QGrpcStatus pour un appel précédemment lancé, et peut donc être indésirable pour les flux (à longue durée de vie).
Remarque : la définition de ce champ remplace le champ d'options de canal correspondant - voir QGrpcChannelOptions::setDeadlineTimeout()
Voir également deadlineTimeout().
[since 6.11] QGrpcCallOptions &QGrpcCallOptions::setFilterServerMetadata(bool value)
Si value est true, les métadonnées liées au protocole définies par le transport gRPC (telles que les clés grpc- réservées) seront exclues. Si value est false, toutes les métadonnées reçues du serveur seront incluses.
*/ void QGrpcCommonOptions::setFilterServerMetadata(bool value) { m_filterServerMetadata = value ; }
QT_END_NAMESPACE
Remarque : la définition de ce champ remplace le champ d'options de canal correspondant - voir QGrpcChannelOptions::setFilterServerMetadata()
Cette fonction a été introduite dans Qt 6.11.
Voir également filterServerMetadata() et QGrpcChannelOptions::setFilterServerMetadata().
[until 6.13] QGrpcCallOptions &QGrpcCallOptions::setMetadata(const QHash<QByteArray, QByteArray> &metadata)
[until 6.13] QGrpcCallOptions &QGrpcCallOptions::setMetadata(QHash<QByteArray, QByteArray> &&metadata)
Cette fonction sera obsolète à partir de la version 6.13.
Utilisez la surcharge QMultiHash à la place.
Définit l'adresse metadata et renvoie une référence à l'objet mis à jour.
Remarque : QGrpcHttp2Channel transporte les métadonnées sous forme d'en-têtes HTTP/2. Les clés sont des chaînes ASCII insensibles à la casse. Vous devez éviter d'utiliser les préfixes internes : : (pseudo-en-tête), grpc- ou qtgrpc-. Les valeurs peuvent être des chaînes ASCII ou des données binaires. Pour plus d'informations, voir RFC 7540, section 8.1.2.
Note : Les métadonnées d'appel sont fusionnées avec toutes les métadonnées au niveau du canal lorsque la RPC démarre - voir QGrpcChannelOptions::setMetadata(QMultiHash).
Voir aussi 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)
Définit l'adresse metadata et renvoie une référence à l'objet mis à jour.
Remarque : QGrpcHttp2Channel transporte les métadonnées sous forme d'en-têtes HTTP/2. Les clés sont des chaînes ASCII insensibles à la casse. Vous devez éviter d'utiliser les préfixes internes : : (pseudo-en-tête), grpc- ou qtgrpc-. Les valeurs peuvent être des chaînes ASCII ou des données binaires. Pour plus d'informations, voir RFC 7540, section 8.1.2. Plusieurs valeurs par clé sont prises en charge.
Remarque : les métadonnées d'appel sont fusionnées avec toutes les métadonnées au niveau du canal lorsque la RPC démarre - voir QGrpcChannelOptions::setMetadata(QMultiHash).
Ces fonctions ont été introduites dans Qt 6.10.
Voir aussi metadata(QtGrpc::MultiValue_t).
[noexcept, since 6.8] void QGrpcCallOptions::swap(QGrpcCallOptions &other)
Échange other avec cet objet. Cette opération est très rapide et n'échoue jamais.
Cette fonction a été introduite dans Qt 6.8.
[since 6.8] QGrpcCallOptions::operator QVariant() const
Construit un nouveau QVariant à partir de cet objet.
Cette fonction a été introduite dans Qt 6.8.
[noexcept] QGrpcCallOptions &QGrpcCallOptions::operator=(QGrpcCallOptions &&other)
Move-assigne other à ce QGrpcCallOptions et renvoie une référence à l'objet mis à jour.
Remarque : l'objet déplacé other est placé dans un état partiellement formé, dans lequel les seules opérations valables sont la destruction et l'attribution d'une nouvelle valeur.
QGrpcCallOptions &QGrpcCallOptions::operator=(const QGrpcCallOptions &other)
Affecte other à QGrpcCallOptions et renvoie une référence à l'objet mis à jour.
Non-membres apparentés
[noexcept, since 6.11] bool operator!=(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)
Renvoie true si les deadlineTimeout, filterServerMetadata et metadata(QtGrpc::MultiValue_t) dans lhs et rhs ne sont pas égaux.
Cette fonction a été introduite dans Qt 6.11.
[since 6.8] QDebug operator<<(QDebug debug, const QGrpcCallOptions &callOpts)
Écrit callOpts dans le flux spécifié debug.
Cette fonction a été introduite dans Qt 6.8.
[noexcept, since 6.11] bool operator==(const QGrpcCallOptions &lhs, const QGrpcCallOptions &rhs)
Renvoie true si les deadlineTimeout, filterServerMetadata et metadata(QtGrpc::MultiValue_t) dans lhs et rhs sont égaux.
Cette fonction a été introduite dans 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.