看了一些WSGI协议后,对其中的逻辑有些模糊,所以按照WSGI协议,写了一个简易的动态web服务器。
什么是WSGI协议?
自行百度
web动态服务器实现逻辑
废话少说先上个图:
需要注意的是:
1、application是应用程序中对web服务器提供的唯一接口,他接受两个参数:
1)env:服务器传递给application的请求信息,形式如下:
env = {
"PATH_INFO": file_name[1:],#请求资源的路径
"METHOD": method #请求方法get、post
}
2)start_response:web服务器提供的一个函数,没有返回值,application框架通过调用该函数把headers和status传递给服务器
application返回值:response_body
代码:
server:
import socket
import sys
import os
import re
from threading import Thread
HTML_R