从网络上的不同设备连接到Flask服务器会导致超时

时间:2016-05-17 14:24:52

标签: python flask configuration devserver

我正在学习Flask,我决定尝试从网络上的其他设备连接到一个非常简单的服务器。我遵循了给出的建议 Flask - configure dev server to be visible across the network并更改了

app.run()

app.run(host='0.0.0.0')

但是,它无法正常工作。

我有一个Flask服务器设置如下:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return 'Hey there'

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

当我启动服务器时,这是输出:

Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)

当我通过localhost进行连接时,服务器工作正常但是,当我尝试使用以下方法从同一网络上的另一台设备进行连接时,我总是会超时:

http://<my_ip_address>:5000 

我尝试从Windows 7桌面和iPhone上连接到服务器(在我的Macbook Air上运行),两者都接收超时。

非常感谢有关此事的任何帮助。

1 个答案:

答案 0 :(得分:0)

handle requests concurrently,您可以使用以下命令运行Flask:

app.run(threaded=True)

默认情况下,Flask使用一个线程运行,因此后续请求将被阻止,直到该线程可用。在制作中,您需要像Gunicorn这样的WSGI容器manage workers and threads