A voir également:
- Proxy en java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Java décompiler - Télécharger - Langages
- Java runtime - Télécharger - Langages
9 réponses
"stp,je veux savoir comment récupérer le proxy host et le proxy port de mon PC."
Mauvaise question.
Ton PC n'as pas de proxy host et de proxy port.
Tes connexions peuvent éventuellement en avoir. Mais ca dépend de la configuration des programmes que tu utilises aller sur le(s) réseau(x), chaque programme ayant sa propre configuration et donc potentiellement un (ou plusieurs) proxy host différent(s).
Ton PC possède probablement une seule adresse IP par contre (bien qu'il soit possible d'en avoir plusieurs à la fois) mais elle change probablement à chaque fois que tu relance ton modem (ou équivalent). Il possède vraisemblablement quelques dizaines de millliers de ports utilisables (enfin si aucun firewall ne s'en mêle).
Bref, mauvaise question.
Mauvaise question.
Ton PC n'as pas de proxy host et de proxy port.
Tes connexions peuvent éventuellement en avoir. Mais ca dépend de la configuration des programmes que tu utilises aller sur le(s) réseau(x), chaque programme ayant sa propre configuration et donc potentiellement un (ou plusieurs) proxy host différent(s).
Ton PC possède probablement une seule adresse IP par contre (bien qu'il soit possible d'en avoir plusieurs à la fois) mais elle change probablement à chaque fois que tu relance ton modem (ou équivalent). Il possède vraisemblablement quelques dizaines de millliers de ports utilisables (enfin si aucun firewall ne s'en mêle).
Bref, mauvaise question.
Je viens de remarquer que le from_Web.readLine() est "bloqué".
Le programme ne rentre pas dans la boucle (pas d'affichege de tmp) mais il n'en sort pas non plus (pas d'affichege de sortie).
Comment je peux faire ?
Aidez-moi s'il vous plait, je deviens folle!! ;-)
while (((tmp = from_Web.readLine()) != null) && !fini){ System.out.println("tmp" + tmp); fini = true; } System.out.println("sortie");
Le programme ne rentre pas dans la boucle (pas d'affichege de tmp) mais il n'en sort pas non plus (pas d'affichege de sortie).
Comment je peux faire ?
Aidez-moi s'il vous plait, je deviens folle!! ;-)
Satrialien
Messages postés
52
Date d'inscription
mercredi 9 mars 2005
Statut
Membre
Dernière intervention
28 janvier 2006
13
20 avril 2005 à 12:05
20 avril 2005 à 12:05
Salut Karine,
à ce que je vois le proxy est en train de te finir :)
La boucle que tu as montré, est-ce que tu l'as essayé toute seule, dans un petit main juste pour tester qu'en faisant une connexion sur un serveur web sur son port 80 et en lui passant une requête http ça fonctionne ?
Si tu restes bloquée sur la condition de ton while, c'est que le serveur web ne te répond pas. Plusieurs explications :
- il te répond pas car la connexion établie avec lui ne fonctionne pas donc tu ne reçoit pas sa réponse.
- il te répond pas car il a pas reçu d'abord ta requête
Le plus simple, si tu es sure que ce que tu as fais devrait fonctionner, c'est de monter toi même son propre serveur web pour faire ces tests : comme ça tu verras les requetes qui lui parviennent (si elles lui arrivent) et les réponses qu'il renvoie, ça te permettra d'en savoir un peu plus long.
à ce que je vois le proxy est en train de te finir :)
La boucle que tu as montré, est-ce que tu l'as essayé toute seule, dans un petit main juste pour tester qu'en faisant une connexion sur un serveur web sur son port 80 et en lui passant une requête http ça fonctionne ?
Si tu restes bloquée sur la condition de ton while, c'est que le serveur web ne te répond pas. Plusieurs explications :
- il te répond pas car la connexion établie avec lui ne fonctionne pas donc tu ne reçoit pas sa réponse.
- il te répond pas car il a pas reçu d'abord ta requête
Le plus simple, si tu es sure que ce que tu as fais devrait fonctionner, c'est de monter toi même son propre serveur web pour faire ces tests : comme ça tu verras les requetes qui lui parviennent (si elles lui arrivent) et les réponses qu'il renvoie, ça te permettra d'en savoir un peu plus long.
Ah, ça n'avance!! ;-)
Je retrouve le (un peu) sourire.
Donc j'ai une réponse du serveur !
Mais il me dit HTTP/1.1 400 Bad Request
Comme requete je lui ai envoyé le GET, l'url, la version HTML, le Host et le User-agent (le tout concaténé dans une chaîne).
Sous quel format j'aurai plus de chance de plaire au serveur ?
Je retrouve le (un peu) sourire.
Donc j'ai une réponse du serveur !
Mais il me dit HTTP/1.1 400 Bad Request
Comme requete je lui ai envoyé le GET, l'url, la version HTML, le Host et le User-agent (le tout concaténé dans une chaîne).
Sous quel format j'aurai plus de chance de plaire au serveur ?
Alors, voila ce que j'envoie comme requete
Dans le terminal j'obtiens ça :
la requete envoyée ->
GET http://www.kochonland.com/ HTTP/1.1
User-Agent: Mozilla/5.0 (compatible; Konqueror/3.2; Linux) KHTML/3.2.3 (like Gecko)
la réponse -> HTTP/1.1 400 Bad Request
Pourquoi le serveur ne veut toujours pas de ma requete ?
if (host_client != "") { sortant.println(requete + "\n" + user_agent + "\n" + host_client + "\n" + "\n"); System.out.println(requete + "\n" + user_agent + "\n" + host_client + "\n" + "\n"); } else { sortant.println(requete + "\n" + user_agent + "\n" + "\n"); System.out.println(requete + "\n" + user_agent + "\n" + "\n"); }
Dans le terminal j'obtiens ça :
la requete envoyée ->
GET http://www.kochonland.com/ HTTP/1.1
User-Agent: Mozilla/5.0 (compatible; Konqueror/3.2; Linux) KHTML/3.2.3 (like Gecko)
la réponse -> HTTP/1.1 400 Bad Request
Pourquoi le serveur ne veut toujours pas de ma requete ?
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 659
20 avril 2005 à 15:46
20 avril 2005 à 15:46
Mais après quand l'url est par exemple www.kochonland.com/bloque_f5.j , j'obtiens une erreur java.net.UnknownHostException: www.kochonland.com/bloque_f5.j
Il faut se connecter uniquement sur le host (www.kochonland.com)
Et après, seulement, envoyer la requête HTTP.
Voir:
http://www.sebsauvage.net/comprendre/url/
Il faut se connecter uniquement sur le host (www.kochonland.com)
Et après, seulement, envoyer la requête HTTP.
Voir:
http://www.sebsauvage.net/comprendre/url/
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 659
20 avril 2005 à 09:56
20 avril 2005 à 09:56
Le Host, c'est ce que demande le client dans l'entête HTTP:
Exemple:
Tu dois donc te connecter sur www.perlfect.com sur le port 80 (puisqu'aucun port n'est précisé), et envoyer la requête tel quel au serveur.
Exemple:
GET /articles/index.shtml HTTP/1.0 User-Agent: Mozilla 4.0 (X; I; Linux-2.0.35i586) Host: www.perlfect.com Accept: image/gif, image/jpeg, */*
Tu dois donc te connecter sur www.perlfect.com sur le port 80 (puisqu'aucun port n'est précisé), et envoyer la requête tel quel au serveur.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est ce que j'avais fait pour tester.
J'ai mis www.kochonland.com comme host et 80 comme port.
J'obtiens une erreur java.net.ConnectException: Connection refused
Qu'est-ce que je peux faire ?
J'ai mis www.kochonland.com comme host et 80 comme port.
J'obtiens une erreur java.net.ConnectException: Connection refused
Qu'est-ce que je peux faire ?
En fait ça a l'air de marcher à peu près maintenant.
Mais comment je fais pour lire ce que renvoie le serveur et le renvoyer au client ?
Mais comment je fais pour lire ce que renvoie le serveur et le renvoyer au client ?
Pour lire la socket, je fais ça :
Mais le from_Web.readLine est vide !
Et la page web ne s'affiche pas...
Est-ce que quelqu'un voit le problème dans mon code ?
Merci
Socket socket = new Socket(InetAddress.getByName(url),port); System.out.println("socket créé"); sin = socket.getInputStream(); BufferedReader from_Web = new BufferedReader(new InputStreamReader(sin)); sout = socket.getOutputStream(); byte [] buffer = new byte[4096]; int lus; boolean fini = false; // Lecture de la réponse while (((tmp = from_Web.readLine()) != null) && !fini){ System.out.println("tmp" + tmp); } socket.close(); client.close();
Mais le from_Web.readLine est vide !
Et la page web ne s'affiche pas...
Est-ce que quelqu'un voit le problème dans mon code ?
Merci