我的Macbook和Windows桌面位于同一wifi网络上。
这是我在Mac(myFlask.py)上运行的python 3代码:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello from Mac"
pn = 5000
ip = "192.168.1.146"
if __name__ == '__main__':
app.run(host = ip,port=pn)
当我在Mac上运行此程序时,可以在两台设备的浏览器中输入192.168.1.146:5000作为网址,并查看“来自Mac的Hello”
这是我在桌面(myFlask.py)上运行的python 3代码:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello from Windows"
pn = 5000
ip = "192.168.1.105"
if __name__ == '__main__':
app.run(host = ip,port=pn)
问题::当我在Windows桌面上运行此程序,并且在两个设备上的浏览器中都输入192.168.1.105:5000作为URL时,我都会在台式机,但在Mac上为“无法访问此站点”。
我尝试了以下操作:
即使如此,我的Mac,Android手机,iphone或其他Mac都找不到Windows桌面上托管的Flask服务器。但是我所有其他设备(包括Windows桌面)都可以看到Mac托管的Flask服务器。
我该怎么办?
答案 0 :(得分:0)
这变成了网络的变幻莫测。更改为
ip = '0.0.0.0'
,然后重试。当您尝试将--port=0.0.0.0
传递给您的应用程序时,该选项被忽略,因为您的应用程序未解析选项。 flask
运行程序会解析它们。在Mac方面,调用将是
FLASK_APP=myApp.py flask run --port=0.0.0.0
我不知道Windows上的等效功能。