Pymotw - http.server
Python http.server 库提供了写 Web Server 的基础接口。
- 继承 BaseHTTPRequestHandler 处理请求。
- 继承的类中,定义
do_GET,do_POST等方法用于处理 GET, POST 等请求 - 状态码可通过
self.send_response(200)设定 - 响应头可通过
self. send_header('Content-Type', 'application/json')设定 - 内容可以通过
self.wfile.write(content)设定 - url 可以通过
urllib.parse.urlparse(self.path)得到解析后的数据 - 表单需要通过
cgi.FieldStorage(fp=self.rfile, headers=self.headers)获得解析后的数据 - 可以通过
class ThreadedHTTPServer(ThreadingMixIn, HTTPServer)获得多线程的 http server - http 错误已经有自动生成响应的逻辑:
self.send_error(404) - 可使用
python3 -m http.server 8080开启 built-in http server,root 目录是启动应用时的 cwd.