QtCoap Namespace
包含Qt CoAP 模块中各处使用的各种标识符。更多内容...
| 头文件: | #include <QtCoap> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Coap) target_link_libraries(mytarget PRIVATE Qt6::Coap) |
| qmake: | QT += coap |
类型
| 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 } |
类型文档
enum class QtCoap::Error
指示在处理请求时发现的错误状况。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::Error::Ok | 0 | 无错误情况。 |
QtCoap::Error::HostNotFound | 1 | 未找到远程主机名。 |
QtCoap::Error::AddressInUse | 2 | 该地址已被占用。 |
QtCoap::Error::TimeOut | 3 | 响应未及时到达。 |
QtCoap::Error::BadRequest | 4 | 请求未被识别。 |
QtCoap::Error::Unauthorized | 5 | 客户端无权执行所请求的操作。 |
QtCoap::Error::BadOption | 6 | 由于存在一个或多个未识别或格式错误的选项,服务器无法理解该请求。 |
QtCoap::Error::Forbidden | 7 | 禁止访问此资源。 |
QtCoap::Error::NotFound | 8 | 未找到所请求的资源。 |
QtCoap::Error::MethodNotAllowed | 9 | 服务器不允许对所请求的 URL 使用该方法。 |
QtCoap::Error::NotAcceptable | 10 | 未找到满足请求接受条件的资源。 |
QtCoap::Error::RequestEntityIncomplete | 11 | 服务器尚未收到处理请求所需的请求正文块。客户端未发送所有块,未按服务器要求的顺序发送,或者发送时间过久,服务器已将其丢弃。 |
QtCoap::Error::PreconditionFailed | 12 | 在服务器上测试时,请求头字段中给定的一项或多项条件被评估为 false。 |
QtCoap::Error::RequestEntityTooLarge | 13 | 请求负载大于服务器愿意或能够处理的大小。 |
QtCoap::Error::UnsupportedContentFormat | 14 | 有效负载的格式不受目标资源上此方法的支持。 |
QtCoap::Error::InternalServerFault | 15 | 服务器遇到意外情况,导致无法处理该请求。 |
QtCoap::Error::NotImplemented | 16 | 服务器不支持处理该请求所需的功能。 |
QtCoap::Error::BadGateway | 17 | 上游服务器发生错误。 |
QtCoap::Error::ServiceUnavailable | 18 | 该服务目前不可用。 |
QtCoap::Error::GatewayTimeout | 19 | 服务器在充当网关或代理时,未从其为完成请求而需要访问的上游服务器收到及时的响应。 |
QtCoap::Error::ProxyingNotSupported | 20 | 服务器无法或不愿作为“Proxy-Uri”选项中指定的 URI 或使用“Proxy-Scheme”中指定的方案的前向代理。 |
QtCoap::Error::Unknown | 21 | 发生了一个未知错误。 |
enum class QtCoap::Method
此枚举用于指定 CoAP 请求方法。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::Method::Invalid | 0 | 空请求的默认请求方法。 |
QtCoap::Method::Get | 1 | GET 方法。 |
QtCoap::Method::Post | 2 | POST 方法。 |
QtCoap::Method::Put | 3 | PUT 方法。 |
QtCoap::Method::Delete | 4 | DELETE 方法。 |
QtCoap::Method::Other | 5 | 其他请求方法。 |
enum class QtCoap::MulticastGroup
此枚举表示RFC 7252 中定义的 CoAP 多播组地址。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::MulticastGroup::AllCoapNodesIPv4 | 0 | 来自“IPv4 多播地址空间注册表”的 IPv4 “所有 CoAP 节点”地址224.0.1.187。 |
QtCoap::MulticastGroup::AllCoapNodesIPv6LinkLocal | 1 | 来自“IPv6 多播地址空间注册表”的 IPv6 “所有 CoAP 节点”链路本地范围地址FF02::FD。 |
QtCoap::MulticastGroup::AllCoapNodesIPv6SiteLocal | 2 | IPv6“所有 CoAP 节点”站点本地域地址FF05::FD,来自“IPv6 多播地址空间注册表”。 |
enum QtCoap::Port
此枚举指定了默认的 CoAP 端口值。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::DefaultPort | 5683 | 用于非安全传输的默认端口。 |
QtCoap::DefaultSecurePort | 5684 | 用于安全传输的默认端口。 |
enum class QtCoap::ResponseCode
该枚举表示 CoAP 协议的响应代码,具体定义见RFC 7252和RFC 7959。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::ResponseCode::EmptyMessage | 0x00 | 空消息的响应代码。 |
QtCoap::ResponseCode::Created | 0x41 | 请求成功,并创建了新资源。此响应代码对应于 HTTP 201“已创建”。 |
QtCoap::ResponseCode::Deleted | 0x42 | 资源已成功删除。此响应代码对应于 HTTP 204“无内容”,但仅用于响应导致资源不再可用的请求,例如 DELETE 以及在某些情况下的 POST。 |
QtCoap::ResponseCode::Valid | 0x43 | 此响应代码与 HTTP 304“未修改”相关,但仅用于指示由 ETag 选项中给定的实体标签所标识的响应是有效的。 |
QtCoap::ResponseCode::Changed | 0x44 | 资源已成功修改。此响应代码对应于 HTTP 204“无内容”,但仅用于响应 POST 和 PUT 请求。 |
QtCoap::ResponseCode::Content | 0x45 | 请求成功。此响应代码对应于 HTTP 200“OK”,但仅用于响应 GET 请求。 |
QtCoap::ResponseCode::Continue | 0x5F | 表示当前数据块的传输成功,服务器将发送更多数据块。 |
QtCoap::ResponseCode::BadRequest | 0x-80 | 请求未被识别。此响应代码对应于 HTTP 400“请求错误”。 |
QtCoap::ResponseCode::Unauthorized | 0x-7f | 客户端无权执行所请求的操作。此响应代码对应于 HTTP 401“未授权”。 |
QtCoap::ResponseCode::BadOption | 0x-7e | 由于存在未识别的选项,服务器无法理解该请求。 |
QtCoap::ResponseCode::Forbidden | 0x-7d | 禁止访问此资源。此响应代码对应于 HTTP 403“禁止”。 |
QtCoap::ResponseCode::NotFound | 0x-7c | 未找到所请求的资源。此响应代码对应于 HTTP 404“未找到”。 |
QtCoap::ResponseCode::MethodNotAllowed | 0x-7b | 服务器不允许对所请求的 URL 使用该方法。此响应代码对应于 HTTP 405“方法不允许”,但与“Allow”头字段没有对应关系。 |
QtCoap::ResponseCode::NotAcceptable | 0x-7a | 未找到满足请求接受条件的资源。此响应代码对应于 HTTP 406“不可接受”,但没有响应实体。 |
QtCoap::ResponseCode::RequestEntityIncomplete | 0x-78 | 服务器尚未收到处理请求所需的全部请求主体块。 |
QtCoap::ResponseCode::PreconditionFailed | 0x-74 | 在服务器上测试时,请求头字段中给定的先决条件评估结果为false 。此响应代码对应于HTTP 412“先决条件失败”。 |
QtCoap::ResponseCode::RequestEntityTooLarge | 0x-73 | 请求负载超过了服务器愿意或能够处理的大小。此响应代码对应于 HTTP 413“请求实体过大”。 |
QtCoap::ResponseCode::UnsupportedContentFormat | 0x-72 | 有效负载的格式不受目标资源上此方法的支持。此响应代码对应于 HTTP 415“不支持的媒体类型”。 |
QtCoap::ResponseCode::InternalServerFault | 0x-60 | 服务器遇到意外情况,导致无法处理该请求。此响应代码对应于 HTTP 500“内部服务器错误”。 |
QtCoap::ResponseCode::NotImplemented | 0x-5f | 服务器不支持处理该请求所需的功能。此响应代码对应于 HTTP 501“未实现”。 |
QtCoap::ResponseCode::BadGateway | 0x-5e | 上游服务器发生错误。此响应代码对应于 HTTP 502“网关错误”。 |
QtCoap::ResponseCode::ServiceUnavailable | 0x-5d | 该服务当前不可用。此响应代码对应于 HTTP 503“服务不可用”。 |
QtCoap::ResponseCode::GatewayTimeout | 0x-5c | 服务器在充当网关或代理时,未从上游服务器收到及时响应。此响应代码对应于 HTTP 504“网关超时”。 |
QtCoap::ResponseCode::ProxyingNotSupported | 0x-5b | 服务器无法或不愿作为“Proxy-Uri”选项中指定的 URI 或使用“Proxy-Scheme”中指定的方案的前向代理。 |
QtCoap::ResponseCode::InvalidCode | 0xFF | 无效的响应代码。 |
enum class QtCoap::SecurityMode
指定用于保护 CoAP 连接的安全模式,该模式在RFC 7252 中有定义。
| 常量 | 值 | 描述 |
|---|---|---|
QtCoap::SecurityMode::NoSecurity | 0 | 没有协议级安全性(DTLS 已禁用)。 |
QtCoap::SecurityMode::PreSharedKey | 1 | 已启用 DTLS。将使用 PSK 身份验证来确保安全。 |
QtCoap::SecurityMode::RawPublicKey | 2 | 已启用 DTLS。将使用不带证书的非对称密钥对(原始公钥)来保障安全。此模式目前尚不支持。 |
QtCoap::SecurityMode::Certificate | 3 | DTLS 已启用。将使用带有 X.509 证书的非对称密钥对来保障安全。 |
© 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.