一、http_server总是在收到消息时打印返回的日志时间戳
通过http.server启动服务器时,每次访问服务器时都会写入ip-address和请求时间。是否可以在控制台中禁用这些日志的显示?
二、解决方案
官方文档中指明了 log_message 默认输出是终端-sys.stderr。如果不想要终端打印日志信息,需要重新此函数。
详情见官方文档
class Resquest(BaseHTTPRequestHandler):server_version = "Apache" # 设置服务器返回的的响应头def log_message(self, format: str, *args: Any) -> None:returnreturn 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())