A voir également:
- Probleme client serveur
- Impossible d'atteindre le serveur dhcp - Forum Réseau
- Changer serveur dns - Guide
- Orange service client - Guide
- Formate pour taxer client frigo vide - Forum PDF
- Serveur pop - Guide
23 réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
23 sept. 2009 à 18:04
23 sept. 2009 à 18:04
salut
je regardes pas ton code de suite, mais déja, aides toi de wireshark pour regarder les réponses, et de la page de wiki sur le http
ta réponse doit contenir les entetes http (sur firefox j'utilise un pluggin "entetes http en direct" poru les regarder plus facilement
tu dois répondre un truc comme l'exemple de wiki:
HTTP/1.0 200 OK --ca ca veut dire que c'est bon
Date: Fri, 31 Dec 1999 23:59:59 GMT --on s'en fout
Server: Apache/0.8.4 --t'as cas personaliser, mais on s'en fout
Content-Type: text/html --type mime, très important
Content-Length: 59 --la longueur des données qui suivent l'entete (le code html quoi)
Expires: Sat, 01 Jan 2000 00:59:59 GMT --tu t'en fous
Last-modified: Fri, 09 Aug 1996 14:21:40 GMT --tu t'en fous
<TITLE>Exemple</TITLE>
<P>Ceci est une page d'exemple.</P>
ha oui, et chaque ligne se termine par un retour à la ligne: \r\n
je regardes pas ton code de suite, mais déja, aides toi de wireshark pour regarder les réponses, et de la page de wiki sur le http
ta réponse doit contenir les entetes http (sur firefox j'utilise un pluggin "entetes http en direct" poru les regarder plus facilement
tu dois répondre un truc comme l'exemple de wiki:
HTTP/1.0 200 OK --ca ca veut dire que c'est bon
Date: Fri, 31 Dec 1999 23:59:59 GMT --on s'en fout
Server: Apache/0.8.4 --t'as cas personaliser, mais on s'en fout
Content-Type: text/html --type mime, très important
Content-Length: 59 --la longueur des données qui suivent l'entete (le code html quoi)
Expires: Sat, 01 Jan 2000 00:59:59 GMT --tu t'en fous
Last-modified: Fri, 09 Aug 1996 14:21:40 GMT --tu t'en fous
<TITLE>Exemple</TITLE>
<P>Ceci est une page d'exemple.</P>
ha oui, et chaque ligne se termine par un retour à la ligne: \r\n
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
23 sept. 2009 à 18:07
23 sept. 2009 à 18:07
ajout:
https://codes-sources.commentcamarche.net/
visiblement ca marche aussi en mettant pas la taille et le type
https://codes-sources.commentcamarche.net/
visiblement ca marche aussi en mettant pas la taille et le type
Alors j'ai quand meme change deux trois truc par rapport au depart mais ca ne marche pas et je ne vois pas l'erreur.
Voici ma fonction d'envoie:
std::string message = "HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nContent-Type: text/html\r\nContent-Length: 59 \r\n\r\n";
message+="<TITLE>Exemple</TITLE>\r\n" ;
message+="<p>Ceci est une page d'exemple.</p>\r\n";
std::cout<<message<<endl;
send(m_Clientfd, message.c_str(), message.size(), MSG_NOSIGNAL);
send(m_Clientfd, "\r\n\r\n", 4, MSG_NOSIGNAL);
printf("send\n");
et donc si j'affiche dans ma console ca me donne ca, ce qui m'a l'air plutot juste:
HTTP/1.0 200 OK
Server: MidasSliceServer
Content-Type: text/html
Content-Length: 59
<TITLE>Exemple</TITLE>
<p>Ceci est une page d'exemple.</p>
send
Voici ma fonction d'envoie:
std::string message = "HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nContent-Type: text/html\r\nContent-Length: 59 \r\n\r\n";
message+="<TITLE>Exemple</TITLE>\r\n" ;
message+="<p>Ceci est une page d'exemple.</p>\r\n";
std::cout<<message<<endl;
send(m_Clientfd, message.c_str(), message.size(), MSG_NOSIGNAL);
send(m_Clientfd, "\r\n\r\n", 4, MSG_NOSIGNAL);
printf("send\n");
et donc si j'affiche dans ma console ca me donne ca, ce qui m'a l'air plutot juste:
HTTP/1.0 200 OK
Server: MidasSliceServer
Content-Type: text/html
Content-Length: 59
<TITLE>Exemple</TITLE>
<p>Ceci est une page d'exemple.</p>
send
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
23 sept. 2009 à 22:01
23 sept. 2009 à 22:01
pourquoi ce send(m_Clientfd, "\r\n\r\n", 4, MSG_NOSIGNAL); ?
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
23 sept. 2009 à 23:14
23 sept. 2009 à 23:14
as tu espionné les trammes avec un des outils que je t'ai donné ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Malheureusement non, mon administrateur reseau absent et je ne suis pas root.
J'arrive a afficher des images en envoyant une requete avec l'url de l'image a partir du navigateur, puis le sereveur me renvoie l'image mofifie avec send()> Cela marche tres bien je ne comprend pas pourquoi ca ne marche pas avec le html.
J'arrive a afficher des images en envoyant une requete avec l'url de l'image a partir du navigateur, puis le sereveur me renvoie l'image mofifie avec send()> Cela marche tres bien je ne comprend pas pourquoi ca ne marche pas avec le html.
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 16:38
24 sept. 2009 à 16:38
surtout que c'est suremetn pas grand chose ;)il faut etre root pour installer le pluggin de firefox que je t'ai donné ?
zut j'avais pas vu cette ligne lol, j'ai donc installe LiveHTTPHeaders.
DOnc en observer les reponses http j'ai celle la
HTTP/1.x 200 OK
Server: MidasSliceServer
Connection: close
Content-Type: image/jpeg
donc qui correspond a mon envoie d'image.
Je viens de me rendre compte que je fais deux send() differents a la suite le image/jpg et le text/html ce qui j'ai l'impression ne marche pas.
J'ai donc mis en commentaire l'envoie d'image et laisser l'envoie d'html
et donc j'obtiens ca
HTTP/1.x 200 OK
Server: MidasSliceServer
Content-Type: text/html
Content-Length: 59
mais toujours rien ne s'affiche....
DOnc en observer les reponses http j'ai celle la
HTTP/1.x 200 OK
Server: MidasSliceServer
Connection: close
Content-Type: image/jpeg
donc qui correspond a mon envoie d'image.
Je viens de me rendre compte que je fais deux send() differents a la suite le image/jpg et le text/html ce qui j'ai l'impression ne marche pas.
J'ai donc mis en commentaire l'envoie d'image et laisser l'envoie d'html
et donc j'obtiens ca
HTTP/1.x 200 OK
Server: MidasSliceServer
Content-Type: text/html
Content-Length: 59
mais toujours rien ne s'affiche....
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:06
24 sept. 2009 à 17:06
essayes d'afficher le source de la page, vu que dans le code il n'y a pas les balsies html... peut etre qu'il a recu, mais qu'il arrive pas à présenter (j'avais du tester ce code avec IE)
alors en ouvrant la source de la page , il me met exactement ce que j'ai code au depart sans avoir change le titre ou rajoute un paragraphe
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:16
24 sept. 2009 à 17:16
c'est à dire ? (pas tout comprit moi)
bem gros ma page web je l'ai code moi meme en XHTML/javascript/css.
Donc si je comprend bien sir j'envoie <TITLE>Exemple</TITLE> , en affichant la source, il devrait m'avoir change le titre de mon code non? (ou alors j'ai pas compris lol)
Donc si je comprend bien sir j'envoie <TITLE>Exemple</TITLE> , en affichant la source, il devrait m'avoir change le titre de mon code non? (ou alors j'ai pas compris lol)
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:23
24 sept. 2009 à 17:23
avant de passer à ta page complète, reste avec mon exemple de 59 caractères, ou sinon modifies bien le content-length . Il doit correspondre exactement à la longueur ..
Donc voila exactement le code que j'ai teste
std::string header ("HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nConnection: close\r\nContent-Type: text/html\r\nContent-Length: 22\r\n\r\n");
std::string message("<TITLE>Exemple</TITLE>\r\n") ;
send(m_Clientfd, header.c_str(), header.size(), MSG_NOSIGNAL);
send(m_Clientfd, message.c_str(), message.size(), MSG_NOSIGNAL);
je recoit donc bien l'en tete mias toujours rien ne change dans ma page source
std::string header ("HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nConnection: close\r\nContent-Type: text/html\r\nContent-Length: 22\r\n\r\n");
std::string message("<TITLE>Exemple</TITLE>\r\n") ;
send(m_Clientfd, header.c_str(), header.size(), MSG_NOSIGNAL);
send(m_Clientfd, message.c_str(), message.size(), MSG_NOSIGNAL);
je recoit donc bien l'en tete mias toujours rien ne change dans ma page source
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:35
24 sept. 2009 à 17:35
24 mon fils, 24 (t'as pas compté le \r\n que t'as ajouté à la fin et qui n'est pas obligatoire)
essayes meme de mettre tout dans le meme envoi, et de rajouter la balise html
std::string header ("HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nConnection: close\r\nContent-Type: text/html\r\nContent-Length: 37\r\n\r\n<HTML><TITLE>Exemple</TITLE></HTML>\r\n") ;
send(m_Clientfd, header.c_str(), header.size(), MSG_NOSIGNAL);
essayes meme de mettre tout dans le meme envoi, et de rajouter la balise html
std::string header ("HTTP/1.0 200 OK\r\nServer: MidasSliceServer\r\nConnection: close\r\nContent-Type: text/html\r\nContent-Length: 37\r\n\r\n<HTML><TITLE>Exemple</TITLE></HTML>\r\n") ;
send(m_Clientfd, header.c_str(), header.size(), MSG_NOSIGNAL);
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:44
24 sept. 2009 à 17:44
ce qui est surtout chiant, c'est quand on aura trouvé l'erreur, on se dira "c'était cette toute petite crotte qui bloquait tout" ....
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:48
24 sept. 2009 à 17:48
essayes de rajouter un connection: close dans les entêtes, et fermes bien la connexion à la fin de l'envoi ...
Le connection close y etait deja et j'ai un close() apres mon appel de la fonction d'envoi.
J'ai essaye de rajouter la balise <head></head> sans succes.
Est ce que \r\n ca compte pour 2 ou 4?
Et est ce que lorsque j'ouvre la page source c'est cense m'avoir remplace mon <TITLE>Precedent titre</TITLE> par <TITLE>Exemple</TITLE> ?
J'ai essaye de rajouter la balise <head></head> sans succes.
Est ce que \r\n ca compte pour 2 ou 4?
Et est ce que lorsque j'ouvre la page source c'est cense m'avoir remplace mon <TITLE>Precedent titre</TITLE> par <TITLE>Exemple</TITLE> ?
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 17:59
24 sept. 2009 à 17:59
\r\n c'est 2 caractères
le \ ne compte pas, c'est le caractères d'échapement
le \ ne compte pas, c'est le caractères d'échapement
ok mais ca ne marche tjrs pas
et donc est ce que lorsque j'ouvre la page source c'est cense m'avoir remplace mon <TITLE>Precedent titre</TITLE> par <TITLE>Exemple</TITLE> ?
et donc est ce que lorsque j'ouvre la page source c'est cense m'avoir remplace mon <TITLE>Precedent titre</TITLE> par <TITLE>Exemple</TITLE> ?
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 193
24 sept. 2009 à 18:05
24 sept. 2009 à 18:05
oui, bien sur, dans le code source de la page, tu dois trouver tout ce que tu avais mis après le \r\n\r\n
dans l'exemple que je t'avais donné plus haut, pour faire bien, j'ai zappé car je fais pas souvent de html, il faut mettre <html><head><title>dfsf</title></head></html> (45 caractères en tout il me semble)
je rentre, et j'essaye ca à la maison
dans l'exemple que je t'avais donné plus haut, pour faire bien, j'ai zappé car je fais pas souvent de html, il faut mettre <html><head><title>dfsf</title></head></html> (45 caractères en tout il me semble)
je rentre, et j'essaye ca à la maison