最简单的莫过于基于文本的协议,举例如下:
六.协议设计
1.登录
c:s Login TrID ClientName Password
s:c LoginOk TrID
s:c LoginFail TrID errorcode2.心跳
c:s Hea TrID
s:c Hea TrID3.发送信息
c:s Send TrID desClientName MessageInfo
s:c NewMsg srcClientName MessageInfo
s:c SendOk TrID
s:c SendFail TrID4.用户上线通知
Online UserName5.用户下线通知
Offline UserName4.下线
c:s Logout TrID
六.协议设计
1.登录
c:s Login TrID ClientName Password
s:c LoginOk TrID
s:c LoginFail TrID errorcode2.心跳
c:s Hea TrID
s:c Hea TrID3.发送信息
c:s Send TrID desClientName MessageInfo
s:c NewMsg srcClientName MessageInfo
s:c SendOk TrID
s:c SendFail TrID4.用户上线通知
Online UserName5.用户下线通知
Offline UserName4.下线
c:s Logout TrID
login 1 A 1234其中1是TrID,client用于核对报文通常,你需要写一个分析报文的东西,因为实际上是分析一个字符串,相对也比较容易。
还有,你所说的是针对报文的,那如果是对于流式数据呢?是否同样适用呢?
比如,称
c:s Login TrID ClientName Password 为登录报文
hea TrID 为心跳报文等,实际上就是传送的流式数据(一个字符串)