为了更好的了解HTTP协议, 特意使用Python写了一个简单HTTP服务器, 因为很简单, 所以效率也不怎么高,而且支持的特性也不多。本文中不足和错误的地方请各位看官多多指教。
>>>网站浏览流程回顾
1、客户端(浏览器)发起http协议;
2、传输层使用tcp协议建立连接,层层打包将请求内容发送给服务器;
3、web服务器解包后解析http请求,交给后端应用程序处理;
4、后端应用得到结果,通过web服务器回发给前端。
本文主要编写了web服务器端和后端应用程序,以完成整个访问流程
>>>编程前梳理
技术点:
1、使用并发效果,使用多进程或者多线程;
2、套接字:tcp流式套接字
后端框架:
1、所有功能封装为类;
2、请求分为两种:一种是请求静态页面;一种是请求后端程序算法处理;
3、设置url列表来区分url
>>>web服务器端
功能:
1、接收http请求(socket通信);
2、解析http请求(GET or POST);
3、将具体的请求整理交给后端服务程序;
4、接收后端服务程序返回的结果,将结果发送给客户端Response
代码详情:
>>>后端服务程序
功能:
1、接收web服务器端的请求;
2、进行逻辑处理和运算处理;
3、和磁盘进行交互(数据库文件);
4、进行数据的整理,更好的向web服务器端返回结果
代码详情:
>>>测试
这里我们通过浏览器进行测试,将这个程序跑起来。我们使用浏览器进行请求http://localhost:8000/abc.html请求自己服务器的abc.html,结果如下。
以上就是Python实现简单的Http服务器的详细内容,感谢阅读
领取专属 10元无门槛券
私享最新 技术干货