Websocket ใน HTML 5 เทคโนโลยี ติดต่อเร็ว กว่า Ajax ไม่ต้องรีเฟรชหน้า
Websocket ใน HTML 5 เทคโนโลยี ติดต่อเร็ว กว่า Ajax ไม่ต้องรีเฟรชหน้า

Websocket คือ ถ้าจะอธิบายให้สั้นๆ และได้ใจความ Websocket เป็นเทคโนโลยีเพื่อใช้ การติดต่อสือสารระหว่าง Web server กับ Client แบบ Real Time Client ที่เป็น html5 + Javascript สามารถรับข้อมูลทางผั่ง Server มาแสดงผลได้ ผ่าน Protocol TCP/IP โดยไม่ต้อง Refresh หน้า เช่นเดียวกับ Ajax แต่ Websocket นั้นมีข้อดีกว่า Ajax คือ Websocket ไม่ต้องส่ง Request ใหม่ เพื่อส่งคำรองขอไปยัง server และ รอรับ respond จากทางฝั่ง Server ทำให้ Websocket ประหยัดทั้งเวลา และปริมาณข้อมูลที่ส่งไปมาระหว่าง web server กับ Client โดยการทำงานของ Websocket มันจะรอรับ Message ทางฝั่ง web server อยู่ตลอดเวลา หลังจากที่ได้ส่งคำสั่ง ติดต่อ Websocket Server ไปแล้วในครั้งแรก และมันจะรอรับ Message จนกระทั้งจะสั่ง Close หรือหยุดการติดต่
ลองดูตัวอย่างโค้ด HTML + Websocket

<!DOCTYPE html>

<meta charset="utf-8" />

<title>WebSocket Test By Mindphp.com</title>

<script language="javascript" type="text/javascript">

  var wsUri = "ws://echo.websocket.org/";
  var output;

  function init()
  {
    output = document.getElementById("output");
    testWebSocket();
  }

  function testWebSocket()
  {
    websocket = new WebSocket(wsUri);
    websocket.onopen = function(evt) { onOpen(evt) };
    websocket.onclose = function(evt) { onClose(evt) };
    websocket.onmessage = function(evt) { onMessage(evt) };
    websocket.onerror = function(evt) { onError(evt) };
  }

  function onOpen(evt)
  {
    writeToScreen("CONNECTED");
    doSend("WebSocket rocks");
  }

  function onClose(evt)
  {
    writeToScreen("DISCONNECTED");
  }

  function onMessage(evt)
  {
      alert(evt);
    writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data+'</span>');
    websocket.close();
  }

  function onError(evt)
  {
    writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data);
  }

  function doSend(message)
  {
    writeToScreen("SENT: " + message); 
    websocket.send(message);
  }

  function writeToScreen(message)
  {
    var pre = document.createElement("p");
    pre.style.wordWrap = "break-word";
    pre.innerHTML = message;
    output.appendChild(pre);
  }

  window.addEventListener("load", init, false);

</script>

<h2>WebSocket Test</h2>
<input id="text" name="text" type="text" size="36">
<label>
<input type="submit" name="button" id="button" value=" Send " onClick=" doSend(document.getElementById('text').value);">
</label>
<div id="output"></div>

</html> 

เรียกน้ำย่อยวันนี้แค่นี้ก่อน วันหลังจะเอาความรู้เรื่อง เทคโนโลยี ตัวนี้มาลงอีกครับ พูดคุยกันได้ที่เว็บบอร์ด Pogramming - PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สอบถามเรื่อง ฟังก์ชั่น exec,shell_exec
โดย Chayyim ศ 04 ม.ค. 2013 1:46 pm บอร์ด Programming - PHP
6
8018
จ 07 ม.ค. 2013 2:30 pm โดย kowit2 View Topic สอบถามเรื่อง ฟังก์ชั่น exec,shell_exec
ขอความคิดเห็นหน่อยคับ ผมจะทำเว็บเกี่ยวกับอะไรดี ที่ต้องใช้ database
โดย mon3181402 ศ 04 ม.ค. 2013 5:12 pm บอร์ด SQL - Database
2
4447
พ 13 ก.พ. 2013 6:24 pm โดย LAVE View Topic ขอความคิดเห็นหน่อยคับ ผมจะทำเว็บเกี่ยวกับอะไรดี ที่ต้องใช้ database
สวัสดีปีใหม่ 2556 .... วันนี้เอาปฏิทินงามๆ เเนว IT มาฝากเด้อจ้า
โดย M003 ศ 04 ม.ค. 2013 11:36 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
1781
ศ 04 ม.ค. 2013 11:39 am โดย konseo View Topic สวัสดีปีใหม่ 2556  .... วันนี้เอาปฏิทินงามๆ เเนว IT มาฝากเด้อจ้า
NV newspage หน้าข่าว
โดย modtanoy_pen ศ 04 ม.ค. 2013 11:20 am บอร์ด PHPBB3.0 Mod Review
2
3968
ศ 04 ม.ค. 2013 11:45 am โดย konseo View Topic NV newspage  หน้าข่าว
ประกาศรับสมัครงาน Programmer/Senior Programmer
โดย HRBXS ศ 04 ม.ค. 2013 10:56 am บอร์ด MindPHP News & Feedback
0
2430
ศ 04 ม.ค. 2013 10:56 am โดย HRBXS View Topic ประกาศรับสมัครงาน Programmer/Senior Programmer
แก้ปัญหา ย้าย category ไม่ได้ @tiamkeaw
โดย mindphp ศ 04 ม.ค. 2013 10:38 am บอร์ด Vitamin - Prestashop
0
10
ศ 04 ม.ค. 2013 10:38 am โดย mindphp View Topic แก้ปัญหา ย้าย category ไม่ได้ @tiamkeaw
OpenERP 7.0 ตัวเต็มออกให้โหลดมาใช้แล้ว ทุก OS - allinone windows Debian Ubuntu
โดย mindphp ศ 04 ม.ค. 2013 5:24 am บอร์ด MindPHP News & Feedback
7
8391
ส 28 พฤษภาคม 2022 6:03 pm โดย บุคคลทั่วไป View Topic OpenERP 7.0 ตัวเต็มออกให้โหลดมาใช้แล้ว ทุก OS - allinone windows Debian Ubuntu
[Free] Dokuyi Live Wallpapers สำหรับมือถือ Android
โดย inexco พฤ 03 ม.ค. 2013 2:31 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
5
4831
พ 03 เม.ย. 2013 1:56 pm โดย pandafurbytoy View Topic [Free] Dokuyi Live Wallpapers สำหรับมือถือ Android