Utilisation socket si on se connecte au net via un proxy [Socket] - C++ - Programmation
Marsh Posté le 25-08-2004 à 16:04:29
TouperTinois a écrit : Comment faire pour que le socket comprenne qu'il y a un proxy entre lui et le serveur et que mon appli marche. |
lire la rfc qui va bien.
Marsh Posté le 25-08-2004 à 16:06:50
DocMaboul a écrit : lire la rfc qui va bien. |
Tu parles de quelle documentation stp...
Car j'ai rien trouvé sur ca.
++
Marsh Posté le 25-08-2004 à 16:10:19
TouperTinois a écrit : Tu parles de quelle documentation stp... |
Marsh Posté le 25-08-2004 à 16:18:03
Bah ecoute ca m'avance pas trop quand meme car je suis un peu perdu dans toutes ces définitions.
Marsh Posté le 25-08-2004 à 16:22:08
TouperTinois a écrit : Bah ecoute ca m'avance pas trop quand meme car je suis un peu perdu dans toutes ces définitions. |
hé bien vous essayez d'implémenter par vous-même un bout du procotole http. Si vous n'arrivez pas à comprendre la spec, je ne vois pas comment cela va être possible de vous aider autrement qu'en vous donnant directement une solution que vous ne comprendrez pas plus et que vous ne pourrez donc pas maintenir. Mais, si vous la voulez, vous n'avez qu'à lire les sources de curl ou d'un brower open source.
Marsh Posté le 25-08-2004 à 16:22:15
Bon ben vas voir ça http://samba.anu.edu.au/rsync/doxy [...] ource.html ..
( fonction establish_proxy_connection() )
Je ne sais pas ce que ça vaut mais ça peut peut-être t'aider ...
Marsh Posté le 25-08-2004 à 16:24:08
Mr Mala a écrit : Bon ben vas voir ça http://samba.anu.edu.au/rsync/doxy [...] ource.html .. |
Merci je vais essayer de comprendre la fonction mais elle a l'air bien hard qd meme comparée à ma fonciton de 20 lignes de code
++
Marsh Posté le 25-08-2004 à 16:27:36
DocMaboul a écrit : hé bien vous essayez d'implémenter par vous-même un bout du procotole http. Si vous n'arrivez pas à comprendre la spec, je ne vois pas comment cela va être possible de vous aider autrement qu'en vous donnant directement une solution que vous ne comprendrez pas plus et que vous ne pourrez donc pas maintenir. Mais, si vous la voulez, vous n'avez qu'à lire les sources de curl ou d'un brower open source. |
Merci pour cette aide précieuse.
J'espere pour vous que certaines personnes vous ont plus aidé que ca dans votre apprentissage de la programmation.
Mais bien évidemment j'oubliais que dans le monde informatique bon nombre de personnes prennent les débutants de haut. SAchez que personne ne peut avoir la connaissance ultime alors aidons nous les uns les autres et le monde informatique ira mieux
Marsh Posté le 25-08-2004 à 16:28:12
oui ben justement, dans tes 20 lignes, il y a apparament peu de chance que
closesocket(sock);
WSACleanup();
s'executent vu que tu fais le return() avant !
( si c'est le cas, j'arrête la prog. et je vais élever des lamas au Pérou moi ! )
Marsh Posté le 25-08-2004 à 16:30:13
Excuse ce n'etait pas pour toi la remarque que j'avais mis.
JE suis plongé dans ton code.
merci a toi++
Marsh Posté le 25-08-2004 à 16:31:24
heuuuu oui oui d'accord, je ne l'avais pas pris pour moi ... mais n'empêche, tu dois faire ton closesocket() et ton WSACleanup() AVANT le return !
Marsh Posté le 25-08-2004 à 16:32:27
Mr Mala a écrit : heuuuu oui oui d'accord, je ne l'avais pas pris pour moi ... mais n'empêche, tu dois faire ton closesocket() et ton WSACleanup() AVANT le return ! |
Oui j'ai changé ca dans la version du socket que j'utilise.
Marsh Posté le 25-08-2004 à 16:36:08
TouperTinois a écrit : Merci pour cette aide précieuse. |
Ni plus ni moins. Lire la doc et la lire bien, c'est une règle de base pour tout programmeur qui se respecte et il n'y a donc pas de meilleurs conseils que les man prout, rfc 3.14, spec XYZ, ... Là, j'ai fait la recherche pour vous: elle contient toutes les informations nécessaires et, au pire, l'endroit où les trouver. Que vous faudrait-il de plus? Le code?
Marsh Posté le 25-08-2004 à 16:42:46
DocMaboul a écrit : hé bien vous essayez d'implémenter par vous-même un bout du procotole http. Si vous n'arrivez pas à comprendre la spec, je ne vois pas comment cela va être possible de vous aider autrement qu'en vous donnant directement une solution que vous ne comprendrez pas plus et que vous ne pourrez donc pas maintenir. Mais, si vous la voulez, vous n'avez qu'à lire les sources de curl ou d'un brower open source. |
Si ce n'ets pas le code ca pourrait etre une aide sur les étapes de mise en place d'une solution. Enfin qulque chose qui me guide un minimum dans mes recherches car mon code fonctionne dasn un cas mais pas dans un autre.
Marsh Posté le 25-08-2004 à 16:46:33
DocMaboul a écrit : Que vous faudrait-il de plus? Le code? |
Non, pas le code .. mais un minimum d'humilité ..
Personnellement, je trouve plus facile de comprendre ( et adapter évidemment ) un code existant que de se taper XXX pages de RFC ...
Maintenant, si tu as eu la chance de pouvoir tout comprendre tout seul, sans jamais poser de question, juste en lisant des kilos de docs, là, je dis respect et je m'incline !
Marsh Posté le 25-08-2004 à 16:53:16
TouperTinois a écrit : Si ce n'ets pas le code ca pourrait etre une aide sur les étapes de mise en place d'une solution. |
Si vous tenez à implémenter vous-même le protocole, lisez la rfc. Cherchez le mot clé "prox" et lisez attentivement tous les paragraphes où il apparaît.
Autre choix, à mon avis plus simple mais moins instructif pour vous: apprenez à vous servir d'une lib qui le fera à votre place, comme curl.
Citation : Enfin qulque chose qui me guide un minimum dans mes recherches car mon code fonctionne dasn un cas mais pas dans un autre. |
- il faut se connecter au proxy sur le port qui va bien, comme c'est indiqué dans la doc
- il faut lui demander la ressource qu'on veut, comme c'est indiqué dans la doc
- si il répond "toi donner user/password" alors faut être gentil avec lui, comme c'est indiqué dans la doc
Bref, il faut lire la doc.
Marsh Posté le 25-08-2004 à 16:57:00
Mr Mala a écrit : Personnellement, je trouve plus facile de comprendre ( et adapter évidemment ) un code existant que de se taper XXX pages de RFC ... |
c'est vrai que la rfc du http, c'est hard pour commencer.
Marsh Posté le 25-08-2004 à 17:01:35
DocMaboul a écrit : c'est vrai que la rfc du http, c'est hard pour commencer. |
Je vois a peu pres comment me connecter au proxy certes en utilisant ma meme chose que j'ai implémentée mais apres comment dire au proxy de se connecter sur le serveur internet que je désire sur le port 80 ca je vois pas
Marsh Posté le 25-08-2004 à 17:15:33
C'est dans la rfc au début du chapitre 5, le chapitre décrivant le protocole pour la partie "requêtes".
Marsh Posté le 25-08-2004 à 15:42:56
Voila j'ai implémenté une connection socket qui me permet de me connecter sur un serveur afin de récupérer le code html de la page désirée pour en faire un traitement ultérieur.
Le problème est le suivant. Si je me connecte de chez moi tout fonctionne normalement, mais si je me connecte du taff ca fonctionne pas il me donne une erreur NETWORK UNREACHABLE. Au taff je me connecte auu net via un proxy.
Comment faire pour que le socket comprenne qu'il y a un proxy entre lui et le serveur et que mon appli marche.
Voila le code du Socket :
Merci d'avance.
++