我要读取http头,因为不是固定长度的,我想要http头内容长度...
http头是\r\n结尾,那是不是只能一个个字节读取来判断\r\n的位置?有什么好的方法吗?
while(.....)
{
recv(m_Socket,buf,1,0))
.....
}
另外
while(.....)
{
recv(m_Socket,buf,1,0))
.....
}
和
recv(m_Socket,buf,1024,0))
两个读取哪个效率高一点?
我想是一次接收的效率高一点,但是我想读http头,只能用while一个个字符读取?觉得接收效率差一点点~有什么好方法吗
http头是\r\n结尾,那是不是只能一个个字节读取来判断\r\n的位置?有什么好的方法吗?
while(.....)
{
recv(m_Socket,buf,1,0))
.....
}
另外
while(.....)
{
recv(m_Socket,buf,1,0))
.....
}
和
recv(m_Socket,buf,1024,0))
两个读取哪个效率高一点?
我想是一次接收的效率高一点,但是我想读http头,只能用while一个个字符读取?觉得接收效率差一点点~有什么好方法吗
没人告诉我怎么处理么?
读到 \r\n 就判断一下,如果是连续的两个 \r\n 就返回。如果不限定,可以把每次读入的数据设大点儿,读下来后查找 \r\n\r\n 找到就截断,然后返回。
另外读的是缓冲区,读同时判断,是常用的方法