我写了一个非常简单的程序,从FastCGI服务器读取信息。所有这一切都接受带有文件描述符0的套接字,并将其从服务器接收的所有数据“释放”到raw.binary (1KB)。我收到926个字节,但文件长1014,因为缓冲区有这么大。
我尝试使用this FastCGI规范手动分析数据,但数据似乎与规范告诉我的不匹配。
前两个字节都等于1.很好,这意味着协议版本1,类型1.(表示请求的开头。)
接下来的2个字节组成一个包含1的int16。这也是预期的,因为这是请求ID,1是第一个请求。
接下来的2个字节,(十六进制)00 08
,告诉我内容长度是8 ...虽然这是不可能的,但是有很多内容甚至不在这8个值的范围内,因为你可以看看你是否已经下载了二进制乱码。
我做错了什么?
答案 0 :(得分:0)
服务器发送了2条记录。第一条记录确实长达8个字节。