ให้เรตสมาชิก: 4 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งาน
 
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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Resource Types ใน Android
โดย Four พ 10 ม.ค. 2018 4:39 pm บอร์ด Mobile Application Developing- Android, iOS
0
20
พ 10 ม.ค. 2018 4:39 pm โดย Four
Android Activity คืออะไร
โดย Four พ 10 ม.ค. 2018 4:28 pm บอร์ด Mobile Application Developing- Android, iOS
0
25
พ 10 ม.ค. 2018 4:28 pm โดย Four
การทำ navigation Scrollspy โดย Bootstrap
โดย Parichat พ 10 ม.ค. 2018 4:25 pm บอร์ด Booststap Knowledge
0
26
พ 10 ม.ค. 2018 4:25 pm โดย Parichat
สอบถามโค้ด phpBB ต้องการเอาตัวเลขมาเข้ารหัสให้เหมือน Password
โดย AePongsak พ 10 ม.ค. 2018 4:13 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
1
22
พ 10 ม.ค. 2018 4:43 pm โดย thatsawan
การทำ popup(ป็อบอัพ) เพื่อแจ้งเตื่อนหริอเพิ่มการค้นหาด้วย Bootstrap(บูตสแต็บ)
โดย Parichat พ 10 ม.ค. 2018 3:57 pm บอร์ด Booststap Knowledge
2
49
พ 10 ม.ค. 2018 5:32 pm โดย Parichat
Android Activity การใช้งานอย่างไร
โดย Four พ 10 ม.ค. 2018 3:31 pm บอร์ด Mobile Application Developing- Android, iOS
0
17
พ 10 ม.ค. 2018 3:31 pm โดย Four
Adobe Edge Animate CC คืออะไร
โดย Four พ 10 ม.ค. 2018 3:20 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
19
พ 10 ม.ค. 2018 3:20 pm โดย Four
การทำ Navigation Bar ด้วย Bootstrap
โดย Parichat พ 10 ม.ค. 2018 3:10 pm บอร์ด Booststap Knowledge
0
22
พ 10 ม.ค. 2018 3:10 pm โดย Parichat
การใช้งาน Android Manifest File
โดย Four พ 10 ม.ค. 2018 3:03 pm บอร์ด Mobile Application Developing- Android, iOS
0
16
พ 10 ม.ค. 2018 3:03 pm โดย Four
การค้นหาข้อมูลโดยใช้ AJAX PHP
โดย Parichat พ 10 ม.ค. 2018 2:54 pm บอร์ด Jquery & Ajax Knowledge
0
25
พ 10 ม.ค. 2018 2:54 pm โดย Parichat
RelativeLayout คืออะไร
โดย Jom07 พ 10 ม.ค. 2018 2:46 pm บอร์ด Mobile Application Developing- Android, iOS
0
18
พ 10 ม.ค. 2018 2:46 pm โดย Jom07
Linear Layout คืออะไร
โดย Jom07 พ 10 ม.ค. 2018 2:43 pm บอร์ด Mobile Application Developing- Android, iOS
0
22
พ 10 ม.ค. 2018 2:43 pm โดย Jom07
ประโยชน์ของ GPS Tracking
โดย Jom07 พ 10 ม.ค. 2018 2:00 pm บอร์ด IOT - Internet of things
0
24
พ 10 ม.ค. 2018 2:00 pm โดย Jom07
การใช้งาน Grid Item ใน CSS
โดย Parichat พ 10 ม.ค. 2018 1:48 pm บอร์ด CSS Knowledge
0
24
พ 10 ม.ค. 2018 1:48 pm โดย Parichat
Cloud Functions for Firebase คืออะไร
โดย Four พ 10 ม.ค. 2018 12:40 pm บอร์ด Mobile Application Developing- Android, iOS
0
16
พ 10 ม.ค. 2018 12:40 pm โดย Four
องค์ประกอบของ GPS
โดย Jom07 พ 10 ม.ค. 2018 12:26 pm บอร์ด IOT - Internet of things
0
21
พ 10 ม.ค. 2018 12:26 pm โดย Jom07
GPS Tracking ที่ทำงานแบบ Web Base กับ PC Base ต่างกันอย่างไร
โดย Jom07 พ 10 ม.ค. 2018 12:14 pm บอร์ด IOT - Internet of things
0
23
พ 10 ม.ค. 2018 12:14 pm โดย Jom07
เมื่อต้องนำสินค้าไปเสนอลูกค้า
โดย Before Dong พ 10 ม.ค. 2018 11:32 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
95
พ 10 ม.ค. 2018 11:32 am โดย Before Dong
การจัดข้อมูลในเว็บโดยใช้ grid view.
โดย Parichat พ 10 ม.ค. 2018 11:06 am บอร์ด CSS Knowledge
0
33
พ 10 ม.ค. 2018 11:06 am โดย Parichat
Web Based GPS Tracking คือ
โดย Jom07 พ 10 ม.ค. 2018 10:54 am บอร์ด IOT - Internet of things
0
24
พ 10 ม.ค. 2018 10:54 am โดย Jom07