ให้เรตสมาชิก: 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
B - แก้ไขข้อมูลสินค้า ใน Odoo กด Sync แล้วหน้าเว็บไม่แก้ไขตาม
โดย M032 ศ 17 มี.ค. 2017 6:05 pm บอร์ด Hachana - E-commerce
3
18
ศ 17 มี.ค. 2017 6:05 pm โดย tsukasaz
รวมกระทู้ความรู้พื้นฐาน Python, XML, SQL
โดย dawthana ศ 17 มี.ค. 2017 5:18 pm บอร์ด Python Knowledge
0
21
ศ 17 มี.ค. 2017 5:18 pm โดย dawthana
องค์ประกอบของคอมพิวเตอร์
โดย bom_002 ศ 17 มี.ค. 2017 5:10 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
21
ศ 17 มี.ค. 2017 5:10 pm โดย bom_002
อยากเปลี่ยนชื่อแถบใน Module เป็นภาษาไทยทำยังไงค่ะ
โดย M032 ศ 17 มี.ค. 2017 4:51 pm บอร์ด Joomla Development
0
21
ศ 17 มี.ค. 2017 4:51 pm โดย M032
B - ภาษาไทย ไม่เป็น URL
โดย M032 ศ 17 มี.ค. 2017 4:15 pm บอร์ด Hachana - E-commerce
1
4
ศ 17 มี.ค. 2017 4:15 pm โดย tsukasaz
ช่วยเหลือหน่อยครับ อยากนำไฟล์รูปภาพจากเครื่อง แสดงบน server ครับ
โดย bom_002 ศ 17 มี.ค. 2017 2:49 pm บอร์ด Programming - C/C++ & java & Python
2
29
ศ 17 มี.ค. 2017 2:49 pm โดย bom_002
ขอวิธี ดึง google map มาโชว์ตำแหน่ง ต้องทำยังไงคะ
โดย moomai ศ 17 มี.ค. 2017 2:48 pm บอร์ด Programming - PHP
1
28
ศ 17 มี.ค. 2017 2:48 pm โดย tsukasaz
บันทึกข้อมูลลงฐานข้อมูลไม่ได้ ไม่ทราบว่าผิดตรงไหนค่ะ
โดย moomai ศ 17 มี.ค. 2017 11:36 am บอร์ด Programming - PHP
1
95
ศ 17 มี.ค. 2017 11:36 am โดย tsukasaz
B - กำหนด Pricelists ใน Odoo แล้วหน้าเว็บไม่เป็นตามที่กำหนด
โดย M032 ศ 17 มี.ค. 2017 10:24 am บอร์ด Hachana - E-commerce
1
6
ศ 17 มี.ค. 2017 10:24 am โดย tsukasaz
รายงานประจำวันที่ 17 มีนาคม 2560
โดย bom_002 ศ 17 มี.ค. 2017 9:59 am บอร์ด M043 - นพรัตน์ เกษเจริญคุณ
1
6
ศ 17 มี.ค. 2017 9:59 am โดย bom_002
แนะนำ Hosting vps จดโดเมน ราคาถูก บริการดีซัพพอร์ตเป็นกันเอง โฮสแรง+มีโฮสฟรีด้วย
โดย AllowPost ศ 17 มี.ค. 2017 12:20 am บอร์ด Web Hosting Review - Free Host Share Host VPS
0
18
ศ 17 มี.ค. 2017 12:20 am โดย AllowPost
การวิเคราะห์ระบบและการออกแบบ System Analysis and Design(ซิสเต็ม อนาชิส แอน ดีไช)
โดย bom_002 พฤ 16 มี.ค. 2017 9:47 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
22
พฤ 16 มี.ค. 2017 9:47 pm โดย bom_002
ช่วยหน่อย ใช้ phpmailer แล้ว mail ยังลงถังขยะอยู่เลยครับ ไม่ลง inbox
โดย Kun Chakun พฤ 16 มี.ค. 2017 4:53 pm บอร์ด Programming - PHP
0
23
พฤ 16 มี.ค. 2017 4:53 pm โดย Kun Chakun
Set Sub Domain ให้เข้าใช้งานด้วย port อื่น แทน 80
โดย mindphp พฤ 16 มี.ค. 2017 1:59 pm บอร์ด OpenERP
0
3
พฤ 16 มี.ค. 2017 1:59 pm โดย mindphp
การประมวลผลข้อมูล Data Processing(ดาต้า โปรเซสชิง)
โดย bom_002 พฤ 16 มี.ค. 2017 12:09 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
23
พฤ 16 มี.ค. 2017 12:09 pm โดย bom_002
B - Cancel Invoice จากหน้า Credit Note กด เเล้วกด print DN/CN ขึ้นข้อมูลไม่ครบ
โดย thatsawan พฤ 16 มี.ค. 2017 11:23 am บอร์ด OpenERP Light Tester
0
2
พฤ 16 มี.ค. 2017 11:23 am โดย thatsawan
รายงานประจำวันที่ 16 มีนาคม 2560
โดย bom_002 พฤ 16 มี.ค. 2017 10:11 am บอร์ด M043 - นพรัตน์ เกษเจริญคุณ
1
6
พฤ 16 มี.ค. 2017 10:11 am โดย bom_002
วิธีทำ Auto Format ใน Sublime text 3 (จัดเรียงโค้ด)
โดย moomai พ 15 มี.ค. 2017 11:09 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
25
พ 15 มี.ค. 2017 11:09 pm โดย moomai
การทำงานของระบบไฟล์ File system implementation(ไฟล์ ชิสเต็ม อิมพริเม้นต์เทชัน)
โดย bom_002 พ 15 มี.ค. 2017 10:26 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
28
พ 15 มี.ค. 2017 10:26 pm โดย bom_002
ติดปัญหา Upload File PDF ขึ้น server เสร็จแล้ว เราจะแปลง PDF เป็นไฟล์รูปภาพครับ
โดย bom_002 พ 15 มี.ค. 2017 6:16 pm บอร์ด Programming - C/C++ & java & Python
11
99
พ 15 มี.ค. 2017 6:16 pm โดย bom_002