我在测试我的烧瓶应用程序时遇到了一个奇怪的问题。我将其简化为以下,让它成为'test.py':
if __name__ == '__main__':
from flask import Flask
app = Flask(__name__)
@app.route('/hello')
def hello():
return 'hello\n'
app.run(debug = True)
所以我简单地将其运行为:
python test.py
* Running on http://127.0.0.1:5000/
* Restarting with reloader
现在在另一个终端上我可以这样做:
>> curl http://localhost:5000/hello
hello
但是,不起作用的是:
>> curl http://192.168.178.23:5000/hello
curl: (7) couldn't connect to host
哪里ifconfig en1
给出:
[...] inet 192.168.178.23 [...]
最初我想从本地网络中的另一台机器测试我的实际应用程序 - 这就是我遇到这个问题的方式。
我还尝试使用我的浏览器、wget 和其他“客户端”。
如果我用 python 内置 BaseHTTPServer & Handler 替换所有 Flask/Werkzeug 的东西,一切都很好 - 这让我得出结论,下面的烧瓶或 werkzeug 存在一些奇怪的问题,而不是我的网络配置。
我对所有低级 io 都不太熟悉,所以真的不知道从哪里开始寻找问题的根源。
提前道歉,如果我在这里遗漏了一些愚蠢的东西......