Prova questo se il metodo 0.0.0.0 non funziona
Roba noiosa
Personalmente ho lottato molto per rendere la mia app accessibile ad altri dispositivi (laptop e telefoni cellulari) attraverso un server locale. Ho provato il metodo 0.0.0.0, ma senza fortuna. Quindi ho provato a cambiare la porta, ma non ha funzionato. Quindi, dopo aver provato un sacco di combinazioni diverse, sono arrivato a questo e ho risolto il mio problema di distribuire la mia app su un server locale.
passi
- Ottieni l'indirizzo IPv4 locale del tuo computer. Questo può essere fatto digitando
ipconfig
su Windows e ifconfig
su Linux e Mac.
Nota: il passaggio sopra deve essere eseguito sul computer su cui stai offrendo l'app e non sul computer su cui accedi. Si noti inoltre che l'indirizzo IPv4 potrebbe cambiare se ci si disconnette e si riconnette alla rete.
Ora, esegui semplicemente l'app di pallone con l'indirizzo IPv4 acquisito.
flask run -h 192.168.X.X
Ad esempio, nel mio caso (vedi l'immagine), l'ho eseguito come:
flask run -h 192.168.1.100
Sul mio dispositivo mobile
Roba opzionale
Se si esegue questa procedura su Windows e si utilizza Power Shell come CLI e non si è ancora in grado di accedere al sito Web, provare un comando CTRL + C nella shell su cui è in esecuzione l'app. Power Shell si blocca a volte e ha bisogno di un pizzico per rianimarsi. In questo modo potrebbe anche terminare il server, ma a volte fa il trucco.
Questo è tutto. Dare un pollice in su se lo hai trovato utile. 😉
Altre cose opzionali
Ho creato uno script Powershell breve che ti fornirà il tuo indirizzo IP ogni volta che ne avrai bisogno:
$env:getIp = ipconfig
if ($env:getIp -match '(IPv4[\sa-zA-Z.]+:\s[0-9.]+)') {
if ($matches[1] -match '([^a-z\s][\d]+[.\d]+)'){
$ipv4 = $matches[1]
}
}
echo $ipv4
Salvalo in un file con estensione .ps1 (per PowerShell) ed eseguilo prima di avviare l'app. Puoi salvarlo nella cartella del tuo progetto ed eseguirlo come:
.\getIP.ps1; flask run -h $ipv4
Nota: ho salvato il codice della shell sopra in getIP.ps1.
Cool.👌