J'ai parlé du grand écran des données plus tôt, et les données à l'intérieur sont mises à jour de temps à autre. Parfois, les données de stock sont mises à jour de temps à autre, la mise à jour Facebook / Twitter, la mise à jour d'évaluation, les nouveaux articles de blog, les résultats de l'événement, etc., tous ont besoin de mises à jour de données de temps à autre. Nous avions l'habitude de demander au serveur de voir s'il y a des mises à jour. HTML5 fournit la méthode des événements de serveur.
Utilisation de serveurs de serveursLes sections des serveurs sont très simples à utiliser, pour recevoir des messages de serveur via l'objet Eventsource. Il y a les incidents suivants:
if (typeof (eventsource)! == Undefined) {// Browser prend en charge le serveur-Sent // un code .....} else {// Le navigateur ne prend pas en charge le serveur-Sent ..}Recevez l'avis de l'événement envoyé par serveur
Var source = new Eventsource (haorooms_sse.php); source.onMessage = fonction (événement) {document.getElementById (result) .InnerHtml + = event.data + << br>;};Instance de code côté serveur
<? $ Time} / n / n; flush () ;?>Les événements et les erreurs de liaison ajoutent
If (typeof (eventsource)! == Undefined) {var source = new Eventsource (server.php); (Événement) {document.getElementById (Result) .InnerHtml + = event.data + <br>; = Désolé, votre navigateur ne prend pas en charge l'événement de serveur ...;}
Nous constaterons que la console est imprimée comme suit:
Entrez constamment le lien et les erreurs, veuillez cliquer sur les détails
En effet, le code PHP n'est qu'un écho simple, et il n'y a pas de sortie continue.
<? While (++ $ i <$ c) {echo id :. $ i./n;
Il n'y aura pas d'erreurs non stop!
IE Solution de compatibilité du navigateurNous savons que le navigateur IE ne prend pas en charge Eventsource, et il existe les solutions suivantes:
Introduireeventsource.min.js
Il peut être parfaitement résolu. Vous pouvez afficher son adresse GitHub: https://github.com/yaffle/eventsource NodeJs est également très pratique.
NPM Installation d'événements-source-polyfill
C'est très bien.
Adresse GitHub: https://github.com/confidence68/demoofsocket/tree/master/serversnt
Ce qui précède est tout le contenu de cet article.