为了理解网络socket解析请求消息头部的过程,今天把c#和java的内存结构学习了一下,主要是读取二进制数据的区别,这是个非常值得注意的问题,如果你不使用string自带的解析接口的话。
现在假设请求对象维护了如下的结构:
/// +-------+---+-------------------------------+
/// |request| l | |
/// | name | e | request body |
/// | (5) | n | |
/// | |(2)| |
/// +-------+---+-------------------------------+