今天我发现自己需要一个简单的 HTTP 服务器,它可以记录/打印出它所知道的关于请求的所有内容,并以一些虚拟回复(用于调试)进行响应。令人惊讶的是,我找不到任何阅读工具来使用它——我错过了什么吗?
Python 的 SimpleHTTPServer 模块看起来很有前途,也许有一种非常快速的方法可以使用它转储整个请求?
我需要它在本地运行。
今天我发现自己需要一个简单的 HTTP 服务器,它可以记录/打印出它所知道的关于请求的所有内容,并以一些虚拟回复(用于调试)进行响应。令人惊讶的是,我找不到任何阅读工具来使用它——我错过了什么吗?
Python 的 SimpleHTTPServer 模块看起来很有前途,也许有一种非常快速的方法可以使用它转储整个请求?
我需要它在本地运行。
从谷歌上的一些快速搜索看来,最简单的方法是子类化 SimpleHttpServer 并记录你想看到的任何内容。
这看起来很容易
class ServerHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
def do_GET(self):
logging.error(self.headers)
# whatever else you would like to log here
SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self)
Handler = ServerHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "serving at port", PORT
httpd.serve_forever()
此外,您可以拥有do_GET
并do_POST
返回您想要的任何“虚拟”回复。
ruby -r sinatra -e "get('/') { puts params.inspect }"
Ruby 简单而灵活,它允许您快速模拟任何回复。
嗨,看看 github 上的 ReturnToSender,它是一个在本地运行的模拟 http 服务器。不是网络托管的。使用您的模拟数据响应 http 客户端并显示客户端请求详细信息。
https://github.com/stephenhealey86/ReturnToSender
支持 GET、POST、PUT、PATCH、DELETE 请求类型和 JSON、TEXT、JavaScript、XML、HTML 内容类型。