0

我已经阅读 rfc 7252 有一段时间了,我可能是盲人,但是当您回答资源的获取请求(例如传感器 /light)时,我找不到如何发送一个简单的数字(整数或浮点数) ,你写在包的什么地方。

我认为它在有效负载中,所以我尝试发送此数据包:选项内容格式文本/纯文本,字符集 = utf-8,长度 1 然后我在数据包中写入 255(0xff) 然后我在数据包中写入 0x34 (有效载荷部分)。

但显然它不起作用,首先我认为我不应该使用这个选项(可能是另一个,但我找不到发送整数或浮点数的好选项),我不确定我是否在正确的方式,并且不确定我在做什么,所以这就是我问的原因。

感谢帮助,

再见

编辑:这里有更多信息:我在 arduino 上使用 microcoap,在计算机/arduino mega 2560 之间使用以太网电缆。wireshark 信息

4

1 回答 1

1

在查看您的 Wireshark 跟踪并查看 Copper 中的响应后,我想我看到了问题所在。当您说Content-formatistext/plain时,您是在说您正在发送 ASCII 数据。您说您[0xFF 0x34]在帖子中发送,但在您实际发送的跟踪中是[0xFF 0x33]. Copper 正在向您准确显示您发送的内容:0xFF 在这里不解析为 ASCII,0x33 是 的 ASCII 3,显示在 Wireshark 跟踪和 Copper 输出窗口中。如果您想发送 2 个不应被解释为文本的原始数据字节,您希望将其设置Content-formatapplication/octet-stream.

于 2016-03-21T01:32:48.120 回答