El navegador muestra un error 404 a pesar de que la aplicación Flask se está ejecutando en localhost en el mismo puerto. ¿Qué podría faltar?

  • Windows 10
  • Python 3.7.6

He configurado el virtualenv y corro

  • Set-ExecutionPolicy Unrestricted -Force

He activado el archivo bat

  • env \ scripts \ active.bat
(env) PS G:\Flasktut> set FLASK_APP=app.py
(env) PS G:\Flasktut> flask run
  * Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
  * Debug mode: off
  * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [17/Jul/2020 15:24:10] "GET / HTTP/1.1" 404 -
(env) PS G:\Flasktut> flask run
  * Environment: production
    WARNING: This is a development server. Do not use it in a production deployment.
    Use a production WSGI server instead.
  * Debug mode: off
  * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [17/Jul/2020 15:32:38] "GET / HTTP/1.1" 404 -

Mi código para app.py

from flask import Flask

app = Flask(__name__)

app.route('/')

def index():
    return 'hello world'

if __name__ == "__main__":

    app.run(debug=True)
0
Yuvraj Metrani 17 jul. 2020 a las 13:45

1 respuesta

La mejor respuesta
app.route('/')

def index():
    return 'hello world'

Olvidó el @ antes de la línea app.route('/').

route de Flask no es un llamada de función regular, pero un decorador. Vuelva a consultar el tutorial Quickstart de los documentos de Flask. Se utiliza para "adjuntar" una regla / ruta de URL a una función específica, en este caso la ruta / (http://127.0.0.1:5000 + /).

Debería ser @app.route('/').

1
Gino Mempin 17 jul. 2020 a las 11:20