Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Serveurs (Apache, IIS,...)
Serveurs (Apache, IIS,...) Forum d'entraide sur les Serveurs : Apache, IIS, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/09/2008, 18h39   #1
Nouveau Membre du Club
 
Inscription : octobre 2006
Messages : 82
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 82
Points : 27
Points : 27
Par défaut Communication page web (AJAX/CGI) et Programme en C++ via sockets

Bonjour,

J'ai créé une page web qui au démarrage appelle un script CGI (écrit en C++) en utilisant AJAX afin d'éviter de recharger la page web.
Ce script crée une socket, se connecte à un serveur (un programme en C++), reçoit un message (afin de l'afficher sur la page web) , et se déconnecte du serveur. Une fois le message reçu "par AJAX" je ré-appelle ce script pour recevoir d'autres messages.

(connection - reception - deconnection - connection - ...)

Ma page web doit donc recevoir des messages d'un programme C++ via les sockets et les afficher en temps réel sans recharger la page.

Ce que je souhaite c'est donc éviter de faire des connections/deconnections multiples.
sagopa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2008, 10h17   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 314
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 314
Points : 8 597
Points : 8 597
De quel côté ? Ajax-CGI ou CGI-serveur ? Pour la partie Ajax, tu ne peux pas trop faire quoi que ce soit. Il faut simplement que ton serveur Web qui héberge ton script CGI (et peut-être aussi le script CGI) implémente le connection keep-alive. Pour la partie CGI-serveur, je ne sais pas quel protocole tu utilises pour dialoguer mais si tu utilises HTTP, c'est pareil : il faut que le client (ton script CGI) et le serveur implémentent le connection keep-alive. Globalement, le connection keep alive permet de maintenir une connexion TCP ouverte sur le serveur Web pour effectuer un certain nombre de requêtes successives de la part du client sans avoir à rouvrir de connexion. Exactement ce que tu cherches à faire.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/10/2008, 12h07   #3
Nouveau Membre du Club
 
Inscription : octobre 2006
Messages : 82
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 82
Points : 27
Points : 27
Par défaut Résolu

C'est bon c'est résolu...

Au départ, j'avais une page en html ; cette dernière appelait grâce à Javascript (onLoad et XmlHttpRequest) le CGI situé au niveau Apache. Ce script devait être exécuté en continue afin de garder une connexion keep alive. Or l'objet XmlHttpRequest attend la fin du script afin de récupérer le résultat du script. Il était là le problème.

Mais maintenant j'appelle directement le CGI depuis le navigateur. Celui-ci, en plus d'ouvrir un connexion keep alive, crée ma page html. Ce script envoie donc en continue des informations au navigateur.

C'est un peu difficile à expliquer ; j'espère que j'ai été assez clair.
sagopa est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h52.


 
 
 
 
Partenaires

Hébergement Web