11548 sujets

JavaScript, DOM et API Web HTML5

HTTPREQUEST permet au navigateur d'envoyer une commande vers le serveur (script asp, php ou autre) et d'attendre une réponse spécifique de celui-ci. Cela rend possible les mises à jour dynamiques de pages avec AJAX mais cela peut aussi être utilisé à d'autres fins (faire du multifenêtrage sans frames, par exemple).
Cette fonction est toujours utilisée à l'initiative du client (le navigateur) et nécessite donc une intervention de l'utilisateur.

J'aurais besoin d'un fonctionnement complémentaire: à l'initiative du serveur (en l'occurence, un script php), je voudrais envoyer des informations vers le client et faire traiter ces informations (qui arrivent de manière asynchrone) par un javascript (qui devrait donc traiter l'évènement d'arrivée de cette demande).
Quelqu'un connaitrait-il le moyen de réaliser cela ?

Merci d'avance pour votre aide.
Hello,
Je ne suis pas un expert en AJAX mais je pense que tu t'emmêle les pinceaux.

a écrit :

à l'initiative du serveur (en l'occurence, un script php), je voudrais envoyer des informations vers le client


Donc le client reçois des infos...(html,xml,...)

a écrit :

et faire traiter ces informations (qui arrivent de manière asynchrone)


par un script php elle n'arrive pas de manière asynchrone, sauf dans le cas ou c'est du javascript qui a appelé cette page, de l'ajax quoi!

a écrit :

par un javascript (qui devrait donc traiter l'évènement d'arrivée de cette demande).


Donc dans le cas ou c'est le javascript qui appelle le php, c'est javascript qui recoit donc il traite directement...
Dans le cas ou le script php est appellé via l'url, alors ré-explique ton problème? Smiley langue
Ce que tu sembles recherché est en fait du push. Le client se met à l'écoute du serveur et c'est le serveur qui prend l'initiative d'envoyer les données (quand un autre utilisateur fais une modification par exemple).

Un solution efficace très complète est APE : http://www.ape-project.org/

Mais il te faut savoir que le push nécessite des services particuliers (sockets notamment) et donc un serveur dédié.