J'essaie de me connecter à un réseau wifi où il détourne toutes les demandes et vous redirige vers une page où vous devez accepter les conditions d'utilisation avant de vous permettre de vous connecter au monde extérieur réel. C'est une pratique assez courante et ne pose généralement pas beaucoup de problème.
Cependant, j'ai un ordinateur exécutant un serveur Ubuntu 9.10 sans système de fenêtrage. Comment puis-je utiliser la ligne de commande pour accepter les conditions d'utilisation? Je n'ai pas accès à Internet sur l'ordinateur pour télécharger des packages via apt-get ou quelque chose comme ça. Bien sûr, je peux penser à un certain nombre de solutions de contournement, mais je pense qu'il existe un moyen facile d'utiliser wget ou curl ou quelque chose.
Fondamentalement, j'ai besoin d'une solution en ligne de commande pour envoyer une demande HTTP POST en cliquant essentiellement sur un bouton. Pour référence future, il serait utile de savoir comment envoyer une demande POST avec, disons, un nom d'utilisateur et un mot de passe si jamais je me retrouve dans cette situation dans un autre hôtel ou aéroport.
Réponses:
Installez Lynx à l'avance, puis utilisez Lynx à partir de la ligne de commande. Lynx est un navigateur basé sur du texte.
Vous pouvez également essayer d'utiliser wget ou curl pour obtenir www.google.com, puis analyser le fichier HTTP renvoyé.
la source
Vous devrez regarder une fois la source du formulaire de connexion pour connaître les noms des champs utilisateur et mot de passe. Comme l'authentification redirige toutes les pages, utilisez n'importe quelle URL pour obtenir cette source:
Par exemple, vous trouverez:
Une autre façon consiste à utiliser (sur un autre ordinateur) un proxy tel que Fiddler2 pour voir ce qui est envoyé "par câble" par le navigateur.
Ensuite, vous pouvez créer votre
curl
commande pour publier vos informations de formulaire:Si vous n'en avez pas
curl
, il est possible d'écrire un simple client HTTP avec un langage que vous pourriez avoir sur la plateforme (Perl, Lua, Java ...).la source