我是程序员;您好程先生;叫我序员就好了程序员

Socket编程中遇到的CRLF

2018-01-24  本文已影响0人  秋名山菜车手

Problem

先说问题:在 Socket 编程的过程中,我遇到了\r\n\r\n且不知道为何物,查找资料之后发现背后的故事还是很有趣的,决定拿上来和大家分享。

今天在尝试补齐之前《Computer Network》的应用层编程作业,第一题是这样的:
要求开发一个简单的 Web 服务器,从浏览器请求一个文件后,我们服务器可以返回这个文件的内容,如果找不到,返回 404。(《Computer Network: A Top-Down Approach Sixth Edition》中文版 P120 作业1)

然后我在编写响应报文的时候,遇到换行的问题,发现别人的解决方案是\r\n\r\n,感到疑惑。

Solution

众所周知,一个 HTTP 响应报文的组成是这样的:

HTTP/1.1 200 OK
.....

第一行是状态行,在返回状态行以后,有一个换行的操作。是这里用了\r\n\r\n,又称作 CRLF
这里涉及到两个内容:

Summary

依稀记得研一好像有 Socket 编程的实验,当时没认真做,所以现在又踩了这个坑。

还请各位学霸们多多嘲讽!!!

Reference

上一篇下一篇

猜你喜欢

热点阅读