0

我无法解决 Lacewing 标头订单。要发送的第一条消息如下:

0
0
11 //lenght
0
..

而名称设置请求是:

0
4 // lenght
1 // should be the type according to spec (1 for name setting request)
..

这些消息的长度以不同的字节存储,请求的类型也是如此。也许我有不正确的文档,但这些消息是我收到的。

4

1 回答 1

0

来自协议规范: https ://github.com/udp/lacewing/blob/0.2.x/relay/current_spec.txt

一旦建立了 TCP 连接,客户端应该发送一个单字节 0 来将自己标识为非 HTTP 客户端。在此之后,他们可能会开始交换消息,其中 Connect 请求应该是第一个。

在初始连接时,非 HTTP 客户端发送字节 0。这不是消息的一部分 - 第一个实际协议消息在此之后出现。

0
0
11 //lenght
0
..

第一个 0 是“我不是 HTTP 客户端”标识符。其余的是实际消息:0 是类型,它由变体和请求类型类型组成。11 是消息的长度,0 是实际的“我可以连接”。

0
4 // lenght
1 // should be the type according to spec (1 for name setting request)
..

同样,0 是类型,由变体和请求类型组成。4 又是长度,1 是对 Set Name 的请求。

连接时的初始 0 是协议的一个令人困惑的方面,因为它在一个奇怪的地方被提及,但仍然被提及。

开发论坛中的相关主题:http: //community.clickteam.com/threads/79449-Lacewing-message-headers

于 2013-04-08T16:24:01.327 回答