web-dev-qa-db-fra.com

comment accéder à ma tablette 127.0.0.1.18000 depuis Android

Je développe une page Web dans Django (sur mon ordinateur avec Windows 7) et maintenant je dois tester certaines pages dans des tablettes. soudain, l'idée est venue si je pouvais avoir un accès à mon hôte local dans Windows depuis une tablette Android. est-ce possible? Je suis dans la même connexion wifi dans les deux appareils à la maison. 

j'ai lu beaucoup de questions et de réponses sur ce problème dans stackoverflow et ailleurs, mais aucune d'entre elles ne m'a apporté de solutions concrètes. 

J'ai Samsung Tab 2 10.1 avec Android 4.0.4.

apprécier toute aide, merci 

19
doniyor

Vous pouvez connaître l'adresse IP de votre PC à l'aide de la commande ipconfig dans une invite de commande Windows. Puisque vous avez mentionné qu'ils étaient connectés via WiFi, recherchez l'adresse IP de l'adaptateur sans fil.

Étant donné que la tablette se trouve également sur ce même réseau WiFi, vous pouvez simplement taper cette adresse dans le navigateur de votre tablette, avec le symbole: 8000, qui devrait s'afficher à l'écran.

11
bojangler

Il semble donc y avoir quelques problèmes. La question que la plupart des réponses adressent est "comment vous connectez-vous à un autre serveur de votre réseau local?" (ou variantes). Il y a deux réponses, vous pouvez utiliser l'adresse IP de l'ordinateur directement ou le nom de l'ordinateur (vous devrez peut-être ajouter .local). Par exemple, mon ordinateur est xavier.local.

Le deuxième problème est que vous semblez vous poser la question suivante: runserver n'est pas accessible via d'autres ordinateurs du réseau (il s'agit de votre réelle question). La raison en est que, par défaut, le serveur d’exécution de Django n’accusera que les demandes de la machine qui les appelle. Cela signifie que les paramètres par défaut permettraient de ne pouvoir accéder au serveur que depuis Windows (et ils l'ont fait exprès pour des raisons de sécurité). Pour qu'il puisse écouter d'autres demandes, vous avez deux options:

runserver 192.168.1.101:8000 
# Only handle requests which are made to the IP address 192.168.1.101

Ou (et cela est plus facile lorsqu'il s'agit de plusieurs environnements):

runserver 0.0.0.0:8000 # handle all requests

Donc, si votre adresse IP est 192.168.1.101:

runserver # only requests made on the machine will be handled
runserver 127.0.0.1 # only requests made on the machine will be handled
runserver 192.168.1.101 # handles all requests (unless IP changes)
runserver 192.168.1.100 # does not handle any requests (wrong IP)
runserver 0.0.0.0 # handles all requests (even if the IP changes)

Je pense qu'il est important de noter que 0.0.0.0 n'est en réalité pas une question de sécurité lorsqu'il s'agit d'une machine de développement locale. Cela ne devient un problème important que lorsque vous travaillez sur une application volumineuse avec une machine qui peut être traitée depuis le monde extérieur. À moins que vous n'ayez une redirection de port (ce que je fais) ou quelque chose de méchant comme ça, vous ne devriez pas être trop inquiet.

20
cwallenpoole

127.0.0.1 est une adresse de bouclage qui signifie, en gros, "ce périphérique"; votre ordinateur et votre tablette Android sont des appareils distincts. Chacun d'eux a donc son propre 127.0.0.1. En d'autres termes, si vous essayez d'accéder à 127.0.0.1 sur votre onglet Android, il essaie de se connecter à un serveur Web sur le périphérique Android, ce qui n'est pas ce que vous voulez. 

Cependant, vous devriez pouvoir vous connecter via le wifi. Sur votre fenêtre Windows, ouvrez une invite de commande et exécutez "ipconfig". Quelque part dans la sortie devrait être l'adresse de votre fenêtre Windows, probablement 192.168.1.100 ou quelque chose de similaire. Votre tablette devrait pouvoir voir le serveur Django à cette adresse.

5
DevOfZot

Bien que ce fil était actif il y a assez longtemps. C’est ce qui a fonctionné pour moi sur Windows 10. Je l’affiche en détail. Pourrait être utile pour les débutants comme moi. 

  1. Ajouter ALLOWED_HOSTS = ['*'] dans le fichier Django settings.py
  2. lancez le serveur Django avec python manage.py 0.0.0.0:YOUR_PORT. J'ai utilisé 9595 comme port.
  3. Faites pare-feu pour autoriser l'accès sur ce port:

    • Naviguez vers le panneau de configuration -> système et sécurité -> Pare-feu Windows Defender

    • Ouvrir Paramètres avancés , sélectionnez Règles entrantes , cliquez dessus avec le bouton droit de la souris puis sélectionnez Nouvelle règle

    • Sélectionnez Port , appuyez sur suivant, entrez le port que vous avez utilisé (dans mon cas, 9595), appuyez sur suivant, sélectionnez autorisez les connexions
    • appuyez ensuite sur Suivant, puis nommez-le et appuyez sur Suivant pour la dernière fois.
  4. Maintenant, trouvez l'adresse IP de votre PC. 

    • Open Command Promt as adminstrator et exécutez la commande ipconfig.
    • Vous pouvez trouver plus d'une adresse IP. Comme je suis connecté via wifi, j'ai pris celui sous Adaptateur LAN sans fil WiFi . Dans mon cas c'était 192.168.0.100
    • Notez que cette adresse IP peut changer lorsque vous vous reconnectez au réseau. Donc, vous devez vérifier à nouveau alors.
  5. Maintenant, depuis un autre appareil (ordinateur, téléphone portable, tablette, etc.) connecté au même réseau, passez à ip_address:YOUR_PORT (dans mon cas, 192.168.0.100:9595).

    J'espère que vous serez prêt à partir!

2
foysal

Si les deux sont connectés au même réseau, il vous suffit de fournir l'adresse IP de votre serveur (dans votre réseau) dans votre application Android. 

1
smk

besoin de connaître l'adresse IP de votre machine. Assurez-vous que vos deux machines (tablette et ordinateur) sont connectées au même réseau

192.168.0.22 - dites l'adresse de votre machine

faire ceci:

192.168.0.22:8000 - à partir de votre tablette

Ça y est !!!

1
Manuj Rastogi

J'ai moi-même eu du mal à résoudre ce problème, et je ne pouvais pas comprendre en quoi il consistait, car cela fonctionnait parfaitement sur mon iPhone, j'ai décidé d'examiner le problème et de trouver une solution rapide. Ma machine locale est un Mac OSX 10.10+. L’une des options aurait été de démarrer un serveur Apache, mais c’est super maladroit - de changer DocumentRoot à chaque fois que vous voulez vérifier rapidement quelque chose sur votre appareil Android. En outre, modifier DocumentRoot est une tâche ardue pour a ** sous Mac OSX 10.10. 

Si vous voulez utiliser:

python -m SimpleHTTPServer

sur votre Android, faites ceci:

Sudo python -m SimpleHTTPServer [ANY PORT YOU WANT, BUT NOT 8000]

J'espère que ça aide. 

cheerz -Pit

0
pit tanenbaum

Testé avec Easy EasyPP DevServer 14.1. L'astuce consiste à ajouter votre adresse IP locale au serveur Apache pour l'écouter.

Faites un clic droit sur l'icône de la barre d'état, allez dans "Configuration" -> "Apache" dans le fichier "httpd.config"

# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 127.0.0.1:80
Listen 192.168.0.201:80  <<-- ADD THIS LINE

Ensuite, accédez à votre Panneau de configuration et désactivez votre pare-feu Windows ou ajoutez votre adresse IP pour smartphone/tablette à l'exception.

C'est tout. J'espère que ça aide. 

L'adresse IP 192.168.0.201 peut être différente de la vôtre. 192.168.0.X

0
Tower Jimmy