Как развернуть приложение Python Flask dev, чтобы другие устройства в сети (Wifi) также могли получить к нему доступ? - PullRequest
0 голосов
/ 12 марта 2020

Это мой файл app.py:

from flask import Flask
app = Flask(__name__)


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

app.run(host = '192.168.2.18', debug=False)

Я использовал команду netstat в Windows, и я знаю, как использовать '192.168.2.18' Когда я запускаю файл, он кажется, работает на порту 5000

Пожалуйста, смотрите пи c ниже:

App runs!

Однако, когда я пытаюсь получить доступ к этому URL с другого устройства по сети, я не вижу его. Я вижу это только на своем компьютере.

Я пробовал различные решения, особенно из этого популярного потока:

Настройка сервера Flask dev для отображения в сети

Ответы [ 2 ]

0 голосов
/ 12 марта 2020

Я расскажу вам секрет, запустите:

python3 -m http.server

и каталог, в котором вы находитесь, будет доступен через всю сеть. В этом примере я захожу в мою папку Pictures и, как вы можете видеть, доступна по адресу http://0.0.0.0:8000/

enter image description here

0 голосов
/ 12 марта 2020

Если вы обновите host ip в своем коде до 0.0.0.0, тогда ваше приложение начнет прослушивать все публичные c IP-адреса.

app.run(host='0.0.0.0')

Вы можете прочитать здесь в flask документах.

Теперь, чтобы кто-то получил доступ к вашей странице, он должен перейти по этому URL -

http://your.machine.ip: 5000 /

Вы также можете указать любой указанный c порт, на котором будет запускаться ваше приложение, скажем, 4000 (порт по умолчанию 5000)

app.run(host='0.0.0.0', port=4000)

Вы даже можете указать имя своего компьютера на месте IP-адрес вашей машины в URL, только если ваш IP-адрес не является c.

...