首页  >  文章  >  后端开发  >  Flask 中的简单测试 HTTP 服务器

Flask 中的简单测试 HTTP 服务器

WBOY
WBOY原创
2024-08-16 18:01:32304浏览

A Simple Test HTTP server from Flask

昨晚我发现自己需要更新一些应用程序代码以从同步 http 调用切换到异步调用。这不是一个特别难的问题,但要正确解决可能会很棘手。

因此,我需要的是一种测试这些 http 调用的方法,而我使用的机器尚未运行任何可用作目标的 http 服务器。

没问题:它有 Python - 这就是您所需要的。

不安装 - 只需创建

这种模式已经在我身上形成了。对于简单的任务,通常更容易编写一些实用脚本,而不是安装一些完整的软件来完成工作。

如果您需要一个真正的服务器,请务必使用它(但即使如此,如果可能的话,我还是建议使用 Docker)。但如果您只需要一个快速端点来测试或解决单个用例,那么 Python 可能是您的朋友。

我特意说 Python 是因为它相当普遍,拥有丰富的标准库和生态系统。

服务器代码

这个简单服务器的想法是帮助我测试异步客户端调用,所以我希望它等待 5 秒然后响应。我只是想让它在 5 秒后响应任何标准呼叫 200。

from flask import Flask, request
import time

app = Flask(__name__)

@app.route('/', defaults={'path': ''}, methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH'])
@app.route('/<path:path>', methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH'])
def catch_all(path):
    print(f"Path: {path}")
    print(f"Headers: {dict(request.headers)}")
    print(f"Params: {request.args}")
    print(f"Data: {request.data}")

    # Wait for 5 seconds
    time.sleep(5)

    return "yessir"

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

以上是Flask 中的简单测试 HTTP 服务器的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn