ให้เรตสมาชิก: 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การใช้งาน Python GUI (Tkinter) : Tkinter Binds (การผูกฟังก์ชัน)
โดย Jom07 พฤ 15 มี.ค. 2018 5:56 pm บอร์ด Python Knowledge
0
142
พฤ 15 มี.ค. 2018 5:56 pm โดย Jom07
ภูษาผ้าน่าน อลังการเครื่องเงิน 2018
โดย Natthida Wutthi พฤ 15 มี.ค. 2018 11:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
467
พฤ 15 มี.ค. 2018 11:41 am โดย Natthida Wutthi
บุพเพสันนิวาส
โดย Before Dong พฤ 15 มี.ค. 2018 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
264
พฤ 15 มี.ค. 2018 10:40 am โดย Before Dong
การใช้งาน Python GUI (Tkinter) : Tkinter PanedWindow (วิดเจ็ตผู้จัดการรูปทรงเรขาคณิต)
โดย Jom07 พ 14 มี.ค. 2018 5:08 pm บอร์ด Python Knowledge
0
106
พ 14 มี.ค. 2018 5:08 pm โดย Jom07
ใครเก่งเลขตอบข้อนี้ทีครับ
โดย Before Dong พ 14 มี.ค. 2018 10:17 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
129
พ 14 มี.ค. 2018 10:17 am โดย Before Dong
การใช้งาน Python GUI (Tkinter) : Tkinter Toplevel (การทำงานแยกหน้าต่าง)
โดย Jom07 อ 13 มี.ค. 2018 6:19 pm บอร์ด Python Knowledge
0
137
อ 13 มี.ค. 2018 6:19 pm โดย Jom07
เมื่อโปรแกรมเมอร์ขอพรกับดาวตก
โดย Before Dong อ 13 มี.ค. 2018 10:05 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
376
อ 13 มี.ค. 2018 10:05 am โดย Before Dong
การใช้งาน Python GUI (Tkinter) : Tkinter Scale (วิตเจ็ตสเกล)
โดย Jom07 จ 12 มี.ค. 2018 5:16 pm บอร์ด Python Knowledge
0
121
จ 12 มี.ค. 2018 5:16 pm โดย Jom07
สอบถามบทความ
โดย alisa93 จ 12 มี.ค. 2018 11:06 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
2
158
จ 12 มี.ค. 2018 11:40 am โดย alisa93
ต้องการ import class จาก folder อื่นมาใช้
โดย Anonymous จ 12 มี.ค. 2018 10:41 am บอร์ด Programming - C/C++ & java & Python
1
117
อ 13 มี.ค. 2018 7:42 pm โดย mindphp
IDM รวมไฟล์ไม่ได้ต้องรีสตาร์ทเครื่องแก้ยังไงครับผู้รู้ช่วยตอบที
โดย แอล หน้านิ่ง ส 10 มี.ค. 2018 6:35 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
150
ส 10 มี.ค. 2018 6:35 pm โดย แอล หน้านิ่ง
เด็กสมัยก่อน Vs เด็กยุคปัจจุบัน
โดย Before Dong ส 10 มี.ค. 2018 11:07 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
123
ส 10 มี.ค. 2018 11:07 am โดย Before Dong
การใช้งาน Python GUI (Tkinter) : Tkinter Frame (วิตเจ็ตเฟรม)
โดย Jom07 ศ 09 มี.ค. 2018 5:08 pm บอร์ด Python Knowledge
0
720
ศ 09 มี.ค. 2018 5:08 pm โดย Jom07
reCaptcha ขั้นเทพ
โดย Before Dong ศ 09 มี.ค. 2018 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
442
ศ 09 มี.ค. 2018 10:40 am โดย Before Dong
รวมเครื่องมือ สำหรับ เขียน Python กำลังหา Git มาใช้กับ Python IDE
โดย mindphp ศ 09 มี.ค. 2018 2:16 am บอร์ด Python Knowledge
0
145
ศ 09 มี.ค. 2018 2:16 am โดย mindphp
การใช้งาน Python GUI (Tkinter) : วิธีการลบเครื่องมือ Tkinter ออกจากหน้าต่าง
โดย Jom07 พฤ 08 มี.ค. 2018 2:34 pm บอร์ด Python Knowledge
0
483
พฤ 08 มี.ค. 2018 2:34 pm โดย Jom07
วิธีการสร้าง ListBox ภาษา ในกรณีที่มีภาษามากกว่า 1 ภาษาให้เลือกใน Form ของ Joomla ในฝั่ง Admin
โดย Parichat พ 07 มี.ค. 2018 5:12 pm บอร์ด Joomla Developing Knowledge
0
148
พ 07 มี.ค. 2018 5:12 pm โดย Parichat
การนำเข้าโมดูลด้วยคำสั่ง from import ในภาษา Python
โดย Jom07 พ 07 มี.ค. 2018 5:10 pm บอร์ด Python Knowledge
0
545
พ 07 มี.ค. 2018 5:10 pm โดย Jom07
Modules (โมดูล) ใน Python คืออะไร
โดย Jom07 พ 07 มี.ค. 2018 3:58 pm บอร์ด Python Knowledge
0
129
พ 07 มี.ค. 2018 3:58 pm โดย Jom07
ชีวิตของโปรแกรมเมอร์
โดย Before Dong พ 07 มี.ค. 2018 3:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
2502
พ 07 มี.ค. 2018 3:30 pm โดย Before Dong