<ph type="x-smartling-placeholder"></ph> 在 GitHub 上查看源代码
OpenThread 同时提供 CoAP 服务器和客户端功能, 连接到 CoAP 服务器上的资源,并观察每个资源 当前状态的变化CLI 中提供的 CoAP 代理可以 作为 CoAP 客户端或服务器。
CoAP 命令
如需查看 coap
命令的列表,请输入 help
:
coap help
help
cancel
delete
get
observe
parameters
post
put
resource
set
start
stop
Done
CLI 命令参考
有关所有命令的说明和语法,请参阅 CLI 命令参考。
coap
命令按字母顺序开头为
Coap cancel。
CoAP 服务器和客户端命令用法示例
此示例使用基本的 CLI 命令启动 CoAP 服务器和客户端, 在 CoAP 服务器上拥有测试资源,并让 CoAP 客户端与该资源进行交互。 示例数据仅作说明之用。
设置 CoAP 服务器
在 CoAP 服务器节点上,执行以下步骤:
启动 CoAP 代理。
coap start
Done创建测试资源。
coap resource test-resource
Done
设置 CoAP 客户端
在 CoAP 客户端节点上,执行以下步骤:
启动 CoAP 代理:
coap start
Done运行
get
命令可获取有关资源的信息:coap get fdde:ad00:beef:0:d395:daee:a75:3964 test-resource
Done coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac] with payload: 30服务器
response
的最后一部分是术语with payload:
,已关注 所有载荷字节(采用十六进制数字格式)。 因此,在此示例中,with payload: 30
表示: 资源的当前载荷被设置为 一个字节的有效负载信息,具有 0x30 十六进制值。 如需详细了解如何使用payload
选项,请参阅 Coap 帖子。您可以使用
put
命令修改资源:coap put fdde:ad00:beef:0:2780:9423:166c:1aac test-resource con hellothere
Done coap response from [fdde:ad00:beef:0:2780:9423:166c:1aac]在此示例中,
con
表示您需要一条可靠的消息, 使用可确认消息 (con
) 获取,然后发送至 CoAP 服务器。 默认设置是发送一条不可确认 (non-con
) 的消息。字符串
hellothere
是使用可选payload
的示例 参数(当type
为con
或non-con
时)。 如需了解详情,请参阅 倒推。服务器通过其 IPv6 地址进行响应,表明请求已处理。
发送到 CoAP 服务器的响应
在服务器上,此示例的输出类似于以下内容:
coap request from [fdde:ad00:beef:0:b3:e3f6:2dcc:4b79] GET coap response sent coap request from [fdde:ad00:beef:0:b3:e3f6:2dcc:4b79] PUT with payload: 68656c6c6f7468657265 coap response sent
68656c6c6f7468657265
的 payload
值是转换后的字符串 hellothere
转换为 ASCII 码字节序列。