服务器端在接收到用户请求后,按如下格式发送
            HTTP/1.0 200 OK \r\n
            Content-Type: text/plain \r\n
            Content-Length: 5 \r\n
            abcde在mozilla firefox上查看,仅显示 abc,少了两个字符。
http://127.0.0.1/readme.txt请问这是怎么回事,Entity Body 后面也需要加 \r\n吗,我看协议上没有这样的规定呀。
另外 Content-Length是否需要包括字符串最后面的\0呀

解决方案 »

  1.   

    http://www.360doc.com/content/10/0930/17/3668821_57590979.shtml
    看一下HTTP协议,希望对你有帮助
      

  2.   

    但为什么会少两个字符呢?
    我自己写一个小socket程序,接收传过来的数据,
    就可以正确显示为 abcde。Entity Body 后面也需要加 \r\n吗?
      

  3.   

    1.有些函数中Content-Length是自动的,就像strlen一样,不计算\0
    2. body如果是最后的信息的段,\r\n可以不加.
      

  4.   

    原因已经找到,
    原来我在发送时 Header部分多发送了一个 \r\n,
    所以接收时,按照Content-Length计算 Entity body,就差了两个字符。结贴,谢谢。