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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
MOD_MTB_NEWS_RECENT
เอกสารภายในซองประมูล ควรมีอะไรบ้างครับ
โดย M029 อ 13 มิ.ย. 2017 3:13 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
71
อ 13 มิ.ย. 2017 3:13 pm โดย M029
สอบถามการเข้าใช้งาน MySQL Datbase Wizard ของ cPanel
โดย araxvaan จ 12 มิ.ย. 2017 10:02 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
90
จ 12 มิ.ย. 2017 10:02 pm โดย mindphp
บริษัท จ้างแม่บ้านเป็นรายวัน จะต้อง หัก ณ ที่จ่าย ไหม
โดย M029 จ 12 มิ.ย. 2017 1:52 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
77
จ 12 มิ.ย. 2017 1:52 pm โดย M029
ไม่ขึ้นโฟเดอร์ ของผมมันไม่ขึ้นโฟเดอร์ของ ภาษา css java html
โดย บุคคลทั่วไป อ 11 มิ.ย. 2017 8:44 pm บอร์ด Programming - PHP
1
82
อ 11 มิ.ย. 2017 8:44 pm โดย บุคคลทั่วไป
ขอแนวทางวิธีใช้ shell_exec() รันไฟลภาษา c บน php หน่อยครับ
โดย Phuwanai Puntui อ 11 มิ.ย. 2017 12:55 am บอร์ด Programming - PHP
1
63
อ 11 มิ.ย. 2017 12:55 am โดย mindphp
การนำข้อมูลสำรองมาใช้ ในโปรแกรมบัญชี Express
โดย pleng ศ 09 มิ.ย. 2017 3:40 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
72
ศ 09 มิ.ย. 2017 3:40 pm โดย pleng
สอบถาม start Apache ใน Localhost แล้วเข้าหน้า phpmyadmin ขึ้นแบบนี้แก้ยังไงอ่าครับ
โดย AePongsak พฤ 08 มิ.ย. 2017 4:35 pm บอร์ด SQL - Database
2
245
พฤ 08 มิ.ย. 2017 4:35 pm โดย AePongsak
ความหมายและการทำงานของ NS Record
โดย araxvaan อ 06 มิ.ย. 2017 7:03 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
73
อ 06 มิ.ย. 2017 7:03 pm โดย araxvaan
ความหมายและการทำงานของ TTL
โดย araxvaan อ 06 มิ.ย. 2017 7:02 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
65
อ 06 มิ.ย. 2017 7:02 pm โดย araxvaan
ความหมายและการทำงานของ TXT Record
โดย araxvaan อ 06 มิ.ย. 2017 7:01 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
56
อ 06 มิ.ย. 2017 7:01 pm โดย araxvaan
ความหมายและการทำงานของ SPF Record
โดย araxvaan อ 06 มิ.ย. 2017 7:00 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
49
อ 06 มิ.ย. 2017 7:00 pm โดย araxvaan
ความหมายและการทำงานของ MX Record
โดย araxvaan อ 06 มิ.ย. 2017 6:59 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
48
อ 06 มิ.ย. 2017 6:59 pm โดย araxvaan
ความหมายและการทำงานของ Cname Record
โดย araxvaan อ 06 มิ.ย. 2017 6:56 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
40
อ 06 มิ.ย. 2017 6:56 pm โดย araxvaan
สอนสร้างเมนูด้านซ้ายของบทความ ด้วย Module ใน Joomla 3.5, 3.6, 3.7
โดย moomai อ 06 มิ.ย. 2017 6:52 pm บอร์ด Mindphp Videoman
0
52
อ 06 มิ.ย. 2017 6:52 pm โดย moomai
สอนการใช้งานการสร้างเนื้อหาจากเว็บลูก ส่งมายังเว็บแม่ Plugin ที่จำเป็นต้องใช้ ใน Joomla
โดย moomai อ 06 มิ.ย. 2017 6:12 pm บอร์ด Mindphp Videoman
0
31
อ 06 มิ.ย. 2017 6:12 pm โดย moomai
แนะนำ bootstrap 4 แบบ Flat Design
โดย moomai อ 06 มิ.ย. 2017 5:20 pm บอร์ด Mindphp Videoman
0
54
อ 06 มิ.ย. 2017 5:20 pm โดย moomai
Install Android Studio บน Ubuntu Linux (การติดตั้ง Android Studio บน Ubuntu)
โดย nuattawoot อ 06 มิ.ย. 2017 5:12 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
0
79
อ 06 มิ.ย. 2017 5:12 pm โดย nuattawoot
สอบถามเรื่อง เช็ค Google Speedtest แล้วขึ้นหน้าเว็บขาว แก้ยังไงครับ
โดย AePongsak อ 06 มิ.ย. 2017 1:11 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
62
อ 06 มิ.ย. 2017 4:44 pm โดย AePongsak
ขั้นตอนการอัพเดทเวอร์ชั่น phpmyadmin directadmin
โดย araxvaan อ 06 มิ.ย. 2017 3:38 pm บอร์ด PHP Knowledge
1
64
อ 06 มิ.ย. 2017 3:38 pm โดย casoteaser
ขอทราบวิธี update version phpmyadmin บนระบบ ubuntu ค่ะ
โดย araxvaan อ 06 มิ.ย. 2017 3:26 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
52
อ 06 มิ.ย. 2017 3:26 pm โดย araxvaan