Python, Flask, 'Hello World': 浏览器无反应

1 投票
4 回答
2249 浏览
提问于 2025-04-18 15:28

我在我的Windows系统上通过pip安装了Flask和HTML5。当我用IDLE启动“Hello World!”程序时,Python Shell里出现了一条红色的消息:

"* Running on xxxx://127.0.0.1:5000/". (xxxx = http)

而当我用app.run(debug=True)启动时,又出现了另一条红色的消息:

"* Restarting with reloader". 

我的浏览器(Firefox)没有任何反应。我该怎么做才能在Firefox的新标签页中看到“Hello World”?

代码是:

from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
    return "Hello World!"
if __name__ == "__main__":
    app.run(debug=True)

return和app.run是缩进的

4 个回答

-3
 from flask import Flask
    app = Flask(__name__)

    @app.route("/")
    def hello():
        return "Hello World!"

    if __name__ == "__main__":
        app.run(debug=True)

试试这个,这对我有效。打开你的火狐浏览器,然后去输出中给出的地址。例如:http://XXXX.X.X.X:5000/

0

试试这段代码:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return "<h1>Hello!</h1>"

if __name__ == "__main__":
    from waitress import serve
    serve(app, host="0.0.0.0", port=8080)

参考链接:Flask首次运行:在生产环境中不要使用开发服务器

1

你需要在浏览器中打开这个页面——它不会自己打开。打开Firefox浏览器,然后访问

127.0.0.1:5000

(这是一个网址)

当你运行你的代码时,它会在那儿等待用户的请求。当它收到请求后,就会返回一个响应,这就是你在浏览器中看到的内容。访问一个网址就是发送这个请求的方式——Flask会把发送到 127.0.0.1:5000 的任何东西都当作请求,并尝试把这个网址和你定义的 @app.route 装饰器匹配起来。例如,如果你有一个用 @app.route("/hello") 装饰的函数,那么当你访问 127.0.0.1:5000/hello 时,Flask就会运行这个函数来决定返回什么内容。

9

你需要打开一个新标签页,输入这个网址:

http://127.0.0.1:5000/

撰写回答