哦吼!!终于开始处理响应数据包了, 我们就可以实现hello world了!!!
记得看完前两章先哟
HTTP响应数据包结构
老规矩我们先来看一下HTTP响应数据包的结构
看起来和请求头结构差不多呢, 我们来看一下实际数据
OK, 这里就不带进去结构里看了!!,我们来试着上手写一个Hello world!
实现Hello World/实现网页响应
我们先创建一个views文件, 新建一个函数index将我们的在请求数据包中解析的数据传给该函数
记得在主文件中调用哟!然后使用send方法发送回去, 记得使用encode编码
我们使用浏览器访问一下
浏览器访问
wow运行成功了,但是我们根本没有构建一个规范的HTTP响应数据包, 我们来看一下开发者工具中 network 抓到的数据包吧
哦吼可以看到他没解析到响应头, 那我们来构建一下吧
构建响应数据包
其实看似请求头多得不行!但实际上呀...必要的就一个, Content-Length 响应数据的长度!我们来做点实验, 比如输入长度 10 的数据。但Content-length值为5会是什么样的效果呢
我们来看一下效果!
ohhhh, 根据规范他只读取了我们响应头写上的长度的数据
可能你用PostMan会发现, 哎?? 怎么拿不到数据, 但是你会发现你只要写好你的HTML语句他就能识别了... 这是PostMan软件自己的验证
响应头的重要性
当然请求头的附带信息也十分重要, 比如我们返回一个JSON数据, 而不标注数据类型他是这样的
那如果我们加上呢
可以看到这就是响应头的重要性!!这就是规范的重要性, 我们需要根据我们的需求来构建我们的响应数据包,
OK我们简单的服务器原型就制作完成了,但是只能提供一次服务而且还是不验证路由的,也就是说你请求我服务器地址我都是返回同样的数据... 剩下的大家各自发挥想象吧