测试客户端应用程序以查看它如何响应超时,即 504 错误。 我需要一个响应缓慢或根本不响应的服务器,以便引发 504 错误。 我用过: wget httpbin.org/delay/10 效果很好。
但是,我想知道那是什么服务器端工具?并且,是否可以制作一个位于端口(例如 8000)上的简单本地工具来执行相同的操作。
我想知道“python3 -m http.server”中是否有任何内容可以调整以提供这种缓慢的响应。
我想你可以编写自定义服务器并根据需要实现延迟:
from http.server import BaseHTTPRequestHandler, HTTPServer
import time
class MyServer(BaseHTTPRequestHandler):
def do_GET(self):
time.sleep(10)
self.send_response(200)
self.send_header("Content-type", "text/html")
self.end_headers()
self.wfile.write(bytes("response", "utf-8"))
if __name__ == "__main__":
hostName = "localhost"
serverPort = 8080
webServer = HTTPServer((hostName, serverPort), MyServer)
print("Server started http://%s:%s" % (hostName, serverPort))
try:
webServer.serve_forever()
except KeyboardInterrupt:
pass
webServer.server_close()
print("Server stopped.")