想轻松赚钱吗那就哎呀哎 跟我一起来来吧

哎呀呀 哎呀呀 大家哎呀哎 跟我一起来来 #哎呀哎呀哎呀哎呀 樱桃小嘴嘟嘟的脸

在这个系列的第一篇文章里面峩们说到了让浏览器来接收服务器发送给它的资源,并且显示出这个HTML页面然后,结果并没有如预期的那样在这篇文章,我们将解决这個问题

好的,现在我们回忆一下第一篇文章我们已经看到了,HTML文件里面的内容已经被我们完整的获取了所以说,不是因为HTML的内容导致失败的

然后,我们也看到了浏览器显示:

我们再来审查元素看看:

在这个系列的第一篇文章里我们谈到了协议这部分内容。而协议顧名思义就是一套标准、一套规范谁不遵循这个规范,我就不按照你的意思去做

关于涉及到HTTP协议的那部分内容出现在了两个地方:


我們发现,第二张图片中的响应头信息是对的只是少了一些具体的信息,我们把她完善一些:

然后我们看看第一张图片发送的信息

因为咜是从表示连接的socket文件描述符中读取信息的,因此读到的自然也就是请求头的信息。而此时我们又把请求头中的信息发送给浏览器,顯然是不符合响应头的要求的因此,我们把这一行删掉来看看结果:

OK,美丽的HTML页面出现了!!

我们来审查一下元素看看

这些不正是峩们在代码里面写的响应头吗?

OK接下来做些小小的优化。

虽然write()不太可能返回一个部分写的结果而且,对write系统调用来说没有EOF情况对于普通文件,除非发生一个错误否则write将保证写入所有的请求。
所以对于普通文件,不需要进行循环写入了然后,对于其他类型--例如套接字--大概得有个循环来保证你真的写入了所有请求的字节

好了,这次的教程结束咱们下次继续喔(u??u??)。happy ending

我要回帖

更多关于 哎呀哎 跟我一起来 的文章

 

随机推荐