pytyhon 简单服务支持post
一行代码服务器
- http.server.SimpleHTTPRequestHandler 是 Python 内置的一个 HTTP 服务器,它提供了最基本的 HTTP 服务功能。它可以处理 GET、HEAD 和 POST 请求。
- http.server.SimpleHTTPRequestHandler 的默认实现只支持 GET 和 HEAD 请求
支持post
- cgi 模式
- --cgi 是一个用于启用 CGI(通用网关接口)支持的参数。CGI 是一种 Web 服务器与程序之间进行数据交换的标准接口,可以使 Web 应用程序与 Web 服务器进行交互,并根据用户请求返回相应的响应结果。
- 当你在 Web 服务器上配置了 CGI 支持时,可以使用特定的 URL 来执行 CGI 程序。例如,当你访问 http://example.com/cgi-bin/mycgi.py 时,服务器将会将请求发送给名为 mycgi.py 的 CGI 程序,并将结果返回给客户端。
- CGI 是一种比较老旧和低效的技术,不建议在生产环境中使用。现代的 Web 应用程序通常采用更快、更安全、更可靠的技术,如 WSGI(Web 服务器网关接口)或 ASGI(异步服务器网关接口)。
- 默认目录 ['/cgi-bin', '/htbin']
mkdir cgi-bin
cd cgi-bin
cat test.py <<<EOF
#!/usr/bin/env python3
import sys
print('200 OK\r\n\r\nfoo')
EOF
chmod u+x cgi-bin/test.py
测试
curl http://localhost:8080/cgi-bin/foo.py -X POST
另外一种方式重新post
import http.server
import socketserver
class MyHttpRequestHandler(http.server.SimpleHTTPRequestHandler):
def do_POST(self):
return self.do_GET()
with socketserver.TCPServer(("", 8081), MyHttpRequestHandler) as httpd:
print("Http Server Serving at port", PORT)
httpd.serve_forever()
启动服务
python3 server.py
本文来自博客园,作者:vx_guanchaoguo0,转载请注明原文链接:https://www.cnblogs.com/guanchaoguo/p/17295499.html