QtCoap Namespace

Enthält verschiedene Bezeichner, die im Modul Qt CoAP verwendet werden. Mehr...

Kopfzeile: #include <QtCoap>
CMake: find_package(Qt6 REQUIRED COMPONENTS Coap)
target_link_libraries(mytarget PRIVATE Qt6::Coap)
qmake: QT += coap

Typen

enum class Error { Ok, HostNotFound, AddressInUse, TimeOut, BadRequest, …, Unknown }
enum class Method { Invalid, Get, Post, Put, Delete, Other }
enum class MulticastGroup { AllCoapNodesIPv4, AllCoapNodesIPv6LinkLocal, AllCoapNodesIPv6SiteLocal }
enum Port { DefaultPort, DefaultSecurePort }
enum class ResponseCode { EmptyMessage, Created, Deleted, Valid, Changed, …, InvalidCode }
enum class SecurityMode { NoSecurity, PreSharedKey, RawPublicKey, Certificate }

Detaillierte Beschreibung

Typ-Dokumentation

enum class QtCoap::Error

Gibt die Fehlerbedingung an, die bei der Bearbeitung der Anfrage festgestellt wurde.

KonstanteWertBeschreibung
QtCoap::Error::Ok0Keine Fehlerbedingung.
QtCoap::Error::HostNotFound1Der Name des entfernten Hosts wurde nicht gefunden.
QtCoap::Error::AddressInUse2Die Adresse ist bereits in Gebrauch.
QtCoap::Error::TimeOut3Die Antwort ist nicht rechtzeitig eingetroffen.
QtCoap::Error::BadRequest4Die Anfrage wurde nicht erkannt.
QtCoap::Error::Unauthorized5Der Client ist nicht berechtigt, die angeforderte Aktion durchzuführen.
QtCoap::Error::BadOption6Die Anfrage konnte vom Server aufgrund einer oder mehrerer nicht erkannter oder fehlerhafter Optionen nicht verstanden werden.
QtCoap::Error::Forbidden7Der Zugriff auf diese Ressource ist untersagt.
QtCoap::Error::NotFound8Die angeforderte Ressource wurde nicht gefunden.
QtCoap::Error::MethodNotAllowed9Der Server lässt die für die angeforderte URL verwendete Methode nicht zu.
QtCoap::Error::NotAcceptable10Es wurde keine Ressource gefunden, die den Akzeptanzkriterien der Anfrage entspricht.
QtCoap::Error::RequestEntityIncomplete11Der Server hat die Blöcke des Anforderungskörpers, die er zum Fortfahren benötigt, nicht erhalten. Der Client hat nicht alle Blöcke gesendet, sie nicht in der vom Server geforderten Reihenfolge gesendet oder sie vor so langer Zeit gesendet, dass der Server sie bereits verworfen hat.
QtCoap::Error::PreconditionFailed12Eine oder mehrere Bedingungen, die in den Header-Feldern der Anfrage angegeben sind, wurden beim Test auf dem Server als falsch bewertet.
QtCoap::Error::RequestEntityTooLarge13Die Nutzlast der Anfrage ist größer als der Server verarbeiten kann oder will.
QtCoap::Error::UnsupportedContentFormat14Die Nutzdaten sind in einem Format, das von dieser Methode auf der Zielressource nicht unterstützt wird.
QtCoap::Error::InternalServerFault15Der Server ist auf eine unerwartete Bedingung gestoßen, die ihn daran hindert, die Anforderung zu erfüllen.
QtCoap::Error::NotImplemented16Der Server unterstützt nicht die Funktionalität, die zur Erfüllung der Anfrage erforderlich ist.
QtCoap::Error::BadGateway17Bei einem vorgeschalteten Server ist ein Fehler aufgetreten.
QtCoap::Error::ServiceUnavailable18Der Dienst ist derzeit nicht verfügbar.
QtCoap::Error::GatewayTimeout19Der Server, der als Gateway oder Proxy fungiert, hat keine rechtzeitige Antwort von einem vorgelagerten Server erhalten, auf den er zugreifen musste, um die Anfrage zu erfüllen.
QtCoap::Error::ProxyingNotSupported20Der Server ist nicht in der Lage oder nicht bereit, als Forward-Proxy für den in der Option Proxy-Uri angegebenen URI zu fungieren oder das in Proxy-Scheme angegebene Schema zu verwenden.
QtCoap::Error::Unknown21Ein unbekannter Fehler ist aufgetreten.

enum class QtCoap::Method

Diese Aufzählung spezifiziert CoAP-Anforderungsmethoden.

KonstanteWertBeschreibung
QtCoap::Method::Invalid0Die Standard-Anforderungsmethode für eine leere Anforderung.
QtCoap::Method::Get1GET-Methode.
QtCoap::Method::Post2POST-Methode.
QtCoap::Method::Put3PUT-Methode.
QtCoap::Method::Delete4DELETE-Methode.
QtCoap::Method::Other5Andere Anfragemethode.

enum class QtCoap::MulticastGroup

Diese Aufzählung steht für die in RFC 7252 definierten CoAP-Multicast-Gruppenadressen.

KonstanteWertBeschreibung
QtCoap::MulticastGroup::AllCoapNodesIPv40IPv4 "All CoAP Nodes" Adresse 224.0.1.187, aus der "IPv4 Multicast Address Space Registry".
QtCoap::MulticastGroup::AllCoapNodesIPv6LinkLocal1IPv6 "All CoAP Nodes" link-local scoped address FF02::FD, aus der "IPv6 Multicast Address Space Registry".
QtCoap::MulticastGroup::AllCoapNodesIPv6SiteLocal2IPv6 "All CoAP Nodes" site-local scoped address FF05::FD, von der "IPv6 Multicast Address Space Registry".

enum QtCoap::Port

Diese Aufzählung gibt die Standardwerte für CoAP-Ports an.

KonstanteWertBeschreibung
QtCoap::DefaultPort5683Der Standardport für die nicht sichere Übertragung.
QtCoap::DefaultSecurePort5684Der Standardport, der für die sichere Übertragung verwendet wird.

enum class QtCoap::ResponseCode

Diese Aufzählung stellt den Antwortcode des CoAP-Protokolls dar, wie in RFC 7252 und RFC 7959 definiert.

KonstanteWertBeschreibung
QtCoap::ResponseCode::EmptyMessage0x00Der Antwortcode für eine leere Nachricht.
QtCoap::ResponseCode::Created0x41Die Anfrage war erfolgreich und hat dazu geführt, dass neue Ressourcen erstellt wurden. Dieser Antwortcode entspricht dem HTTP 201 "Created".
QtCoap::ResponseCode::Deleted0x42Die Ressource wurde erfolgreich gelöscht. Dieser Antwortcode entspricht HTTP 204 "No Content", wird aber nur als Antwort auf Anfragen verwendet, die dazu führen, dass die Ressource nicht mehr verfügbar ist, wie z. B. DELETE und, unter bestimmten Umständen, POST.
QtCoap::ResponseCode::Valid0x43Dieser Antwortcode entspricht HTTP 304 "Not Modified", wird aber nur verwendet, um anzuzeigen, dass die durch das in der ETag-Option angegebene Entity-Tag identifizierte Antwort gültig ist.
QtCoap::ResponseCode::Changed0x44Die Ressource wurde erfolgreich geändert. Dieser Antwortcode entspricht HTTP 204 "No Content", wird aber nur als Antwort auf POST- und PUT-Anfragen verwendet.
QtCoap::ResponseCode::Content0x45Die Anfrage war erfolgreich. Dieser Antwortcode entspricht HTTP 200 "OK", wird aber nur als Antwort auf GET-Anfragen verwendet.
QtCoap::ResponseCode::Continue0x5FZeigt an, dass die Übertragung des aktuellen Blocks erfolgreich war und der Server weitere Blöcke senden wird.
QtCoap::ResponseCode::BadRequest0x-80Die Anfrage wurde nicht erkannt. Dieser Antwortcode entspricht HTTP 400 "Bad Request".
QtCoap::ResponseCode::Unauthorized0x-7fDer Client ist nicht berechtigt, die angeforderte Aktion durchzuführen. Dieser Antwortcode entspricht HTTP 401 "Unauthorized".
QtCoap::ResponseCode::BadOption0x-7eDie Anfrage konnte vom Server nicht verstanden werden, da die Optionen nicht erkannt wurden.
QtCoap::ResponseCode::Forbidden0x-7dDer Zugriff auf diese Ressource ist untersagt. Dieser Antwortcode entspricht HTTP 403 "Forbidden".
QtCoap::ResponseCode::NotFound0x-7cDie angeforderte Ressource wurde nicht gefunden. Dieser Antwortcode entspricht HTTP 404 "Not Found".
QtCoap::ResponseCode::MethodNotAllowed0x-7bDer Server lässt die für die angeforderte URL verwendete Methode nicht zu. Dieser Antwortcode entspricht HTTP 405 "Method Not Allowed", jedoch ohne Parallele zum Headerfeld "Allow".
QtCoap::ResponseCode::NotAcceptable0x-7aEs wurde keine Ressource gefunden, die den Akzeptanzkriterien der Anfrage entspricht. Dieser Antwortcode entspricht HTTP 406 "Not Acceptable", jedoch ohne Antwortentität.
QtCoap::ResponseCode::RequestEntityIncomplete0x-78Der Server hat nicht alle Blöcke des Anforderungskörpers erhalten, die er zum Fortfahren benötigt.
QtCoap::ResponseCode::PreconditionFailed0x-74Die in den Header-Feldern der Anfrage angegebenen Vorbedingungen wurden beim Test auf dem Server als false ausgewertet. Dieser Antwortcode entspricht HTTP 412 "Vorbedingung fehlgeschlagen".
QtCoap::ResponseCode::RequestEntityTooLarge0x-73Die Nutzlast der Anfrage ist größer als der Server bereit oder in der Lage ist zu verarbeiten. Dieser Antwortcode entspricht HTTP 413 "Request Entity Too Large".
QtCoap::ResponseCode::UnsupportedContentFormat0x-72Der Payload hat ein Format, das von dieser Methode auf der Zielressource nicht unterstützt wird. Dieser Antwortcode entspricht HTTP 415 "Unsupported Media Type".
QtCoap::ResponseCode::InternalServerFault0x-60Der Server ist auf eine unerwartete Bedingung gestoßen, die ihn daran hindert, die Anfrage zu erfüllen. Dieser Antwortcode entspricht HTTP 500 "Internal Server Error".
QtCoap::ResponseCode::NotImplemented0x-5fDer Server unterstützt die zur Erfüllung der Anfrage erforderlichen Funktionen nicht. Dieser Antwortcode entspricht HTTP 501 "Not Implemented".
QtCoap::ResponseCode::BadGateway0x-5eBei einem vorgeschalteten Server ist ein Fehler aufgetreten. Dieser Antwortcode entspricht HTTP 502 "Bad Gateway".
QtCoap::ResponseCode::ServiceUnavailable0x-5dDer Dienst ist derzeit nicht verfügbar. Dieser Antwortcode entspricht HTTP 503 "Service Unavailable".
QtCoap::ResponseCode::GatewayTimeout0x-5cDer Server, der als Gateway oder Proxy fungiert, hat keine rechtzeitige Antwort von einem vorgelagerten Server erhalten. Dieser Antwortcode entspricht HTTP 504 "Gateway Timeout".
QtCoap::ResponseCode::ProxyingNotSupported0x-5bDer Server ist nicht in der Lage oder nicht willens, als Forward-Proxy für den in der Option Proxy-Uri angegebenen URI oder unter Verwendung des in Proxy-Scheme angegebenen Schemas zu fungieren.
QtCoap::ResponseCode::InvalidCode0xFFEin ungültiger Antwortcode.

enum class QtCoap::SecurityMode

Gibt den Sicherheitsmodus an, der zur Sicherung einer CoAP-Verbindung verwendet wird, wie in RFC 7252 definiert.

KonstanteWertBeschreibung
QtCoap::SecurityMode::NoSecurity0Es gibt keine Sicherheit auf Protokollebene (DTLS ist deaktiviert).
QtCoap::SecurityMode::PreSharedKey1DTLS ist aktiviert. Die PSK-Authentifizierung wird für die Sicherheit verwendet.
QtCoap::SecurityMode::RawPublicKey2DTLS ist aktiviert. Ein asymmetrisches Schlüsselpaar ohne Zertifikat (ein roher öffentlicher Schlüssel) wird für die Sicherheit verwendet. Dieser Modus wird noch nicht unterstützt.
QtCoap::SecurityMode::Certificate3DTLS ist aktiviert. Für die Sicherheit wird ein asymmetrisches Schlüsselpaar mit einem X.509-Zertifikat verwendet.

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