"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Un servidor HTTP de prueba simple de Flask

Un servidor HTTP de prueba simple de Flask

Publicado el 2024-08-25
Navegar:670

A Simple Test HTTP server from Flask

Anoche me encontré con la necesidad de actualizar el código de una aplicación para cambiar de una llamada http sincrónica a una asincrónica. Este no es un problema particularmente difícil, pero puede resultar complicado corregirlo.

Por lo tanto, lo que necesitaba era una forma de probar estas llamadas http, y la máquina que estaba usando no tenía ningún servidor http ejecutándose para usarlo como destino.

No hay problema: tiene Python, y eso es todo lo que necesitas.

No instalar, solo crear

Este patrón se ha estado formando para mí. Para tareas sencillas, suele ser más fácil escribir un pequeño script de utilidad en lugar de instalar un software completo para realizar el trabajo.

Si necesita un servidor real, hágalo (pero aun así, sugeriría Docker si es posible). Pero si solo necesita un punto final rápido para realizar pruebas o resolver un caso de uso único, entonces Python probablemente sea su amigo.

Digo Python específicamente porque es bastante ubicuo con una biblioteca y un ecosistema estándar ricos.

código de servidor

La idea con este servidor simple era ayudarme a probar las llamadas del cliente asíncrono, así que quería que esperara 5 segundos y luego respondiera. Solo quería que respondiera a cualquier llamada estándar con un 200 después de 5 segundos.

from flask import Flask, request
import time

app = Flask(__name__)

@app.route('/', defaults={'path': ''}, methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH'])
@app.route('/', 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)

Declaración de liberación Este artículo se reproduce en: https://dev.to/byronsalty/a-simple-test-http-server-from-flask-3lf9?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3