Я не знаком с Python Flask, но, тем не менее, если вы используете сервер с 127.0.0.1
вы просто ограничиваете его localhost
и ничем иным. Это не специфическая концепция Python Flask, а общая сетевая концепция.
Для большинства приложений, работающих на сервере, чтобы приложение было доступно в сети при любой настройке, необходимо запустить приложение на IP-адресе 0.0.0.0
. Более подробную информацию об этом другом ответе можно найти в переполнении стека. И как ясно объяснено в официальном руководстве по быстрому запуску Python Flask:
Внешне видимый сервер
Если вы запустите сервер, вы заметите, что сервер доступен только с вашего собственного компьютера, а не с любого другого в сети. Это значение по умолчанию, потому что в режиме отладки пользователь приложения может выполнить произвольный код Python на вашем компьютере.
Если у вас отключен отладчик или вы доверяете пользователям вашей сети, вы можете сделать сервер общедоступным, просто добавив --host = 0.0.0.0 в командную строку:
flask run --host=0.0.0.0
Это говорит вашей операционной системе прослушивать все публичные IP-адреса.
Если вы не хотите, чтобы приложение было доступно на всех интерфейсах, вам необходимо назначить устройству статический IP-адрес, а затем настроить для этой flask run --host=xxx.xxx.xxx.xxx
чтобы использовать этот конкретный статический IP-адрес. , Но для чего-то подобного - когда вы запускаете его на маршрутизаторе через DHCP для личного использования, привязка к 0.0.0.0
не является большой проблемой.