一、http_server总是在收到消息时打印返回的日志时间戳
通过http.server启动服务器时,每次访问服务器时都会写入ip-address和请求时间。是否可以在控制台中禁用这些日志的显示?
二、解决方案
官方文档中指明了 log_message 默认输出是终端-sys.stderr。如果不想要终端打印日志信息,需要重新此函数。
详情见官方文档
python
class Resquest(BaseHTTPRequestHandler):
server_version = "Apache" # 设置服务器返回的的响应头
def log_message(self, format: str, *args: Any) -> None:
return
return super().log_message(format, *args)
def do_GET(self):
self.send_response(200)
self.send_header("Content-type", "application/json")
self.send_header("test", "This is get!")
self.end_headers()
self.wfile.write(json.dumps(data).encode())
def do_POST(self):
# path = self.path
# print(path)
# 获取post提交的数据
datas = self.rfile.read(int(self.headers['Content-Length']))
print(result)
self.send_response(200)
self.send_header("Content-type", "application/json")
self.send_header("test", "This is post!")
self.end_headers()
self.wfile.write(json.dumps(data).encode())