HTML5 - เหตุการณ์ที่เซิร์ฟเวอร์ส่ง

เหตุการณ์ที่เซิร์ฟเวอร์ส่ง

ใช้การอัปเดตจากเซิร์ฟเวอร์และให้ผลลัพธ์บนเว็บเบราว์เซอร์ก่อนที่จะอัปเดตจากเซิร์ฟเวอร์เบราว์เซอร์จะต้องถามว่ามีการอัปเดตใด ๆ ในเว็บเซิร์ฟเวอร์หรือไม่

ตัวอย่าง

โค้ด HTML5 ควรเป็นดังนี้

<html>
   <body>
   
      <h1> Server updates</h1>
      <div id="result"></div>
   
      <script>
         if(typeof(EventSource) !== "undefined") {
            var source = new EventSource("demo_sse.php");
         
            source.onmessage = function(event) {
               document.getElementById("result").innerHTML += event.data + "<br>";
            };
         }
      
         else {
            document.getElementById("result").innerHTML = "Sorry, your browser does not support ";
         }
      </script>
   </body>
</html>

demo_sse.php

รหัสเซิร์ฟเวอร์ควรอยู่ใน PHP ซึ่งมีลักษณะดังนี้

<?php
   header('Content-Type: text/event-stream');
   header('Cache-Control: no-cache');
   
   $time = date('r'); echo "data: The server time is: {$time}\n\n";
   flush();
?>

คุณสามารถรับการสาธิตเหตุการณ์ที่เซิร์ฟเวอร์ส่งได้ที่นี่