ให้เรตสมาชิก: 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
ช่วยสอนวิธีติดตั้งTheme Magento บน AutoInstaller บน Direcadmin ของHost ให้หน่อยครับ
โดย บุคคลทั่วไป พฤ 05 ต.ค. 2017 2:29 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
45
พฤ 05 ต.ค. 2017 2:29 pm โดย บุคคลทั่วไป
หารวบรวมเว็บไซต์ที่มี content เกี่ยวกับซอต์ฟเเวร์
โดย thatsawan พฤ 05 ต.ค. 2017 2:03 pm บอร์ด Part time work M039
5
22
พฤ 05 ต.ค. 2017 2:03 pm โดย mindphp
6 รถใหม่ประหยัดน้ำมันไม่เกิน 7 แสนบาทปี 2017
โดย willywellw พฤ 05 ต.ค. 2017 1:00 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
72
พฤ 05 ต.ค. 2017 1:00 pm โดย willywellw
เมื่อเริ่มใช้งานโปรแกรม จริงจัง ครั้งแรก
โดย Before Dong พฤ 05 ต.ค. 2017 10:21 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
308
พฤ 05 ต.ค. 2017 10:34 am โดย thatsawan
รู้จักกับ ภาษาโปรแกรมมิ่งที่นิยมกับ Data Science(ดาต้า ไซค์)
โดย paoonline พ 04 ต.ค. 2017 5:19 pm บอร์ด Share Knowledge
0
88
พ 04 ต.ค. 2017 5:19 pm โดย paoonline
พีระมิดเวลาในการทำงานของ การพัฒนา ซอฟต์แวร์
โดย Before Dong พ 04 ต.ค. 2017 11:42 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
4139
พ 04 ต.ค. 2017 11:42 am โดย P'Eak
ติดตั้ง Apache(อาปาเช่) (httpd) เพื่อใช้งาน Web server(เว็บเซิพเวอร์) บน Linux server CentOS(ลีนุกเซิพเวอร์ เซ็นโอเอส)
โดย paoonline พ 04 ต.ค. 2017 10:31 am บอร์ด Linux - Web Server
0
73
พ 04 ต.ค. 2017 10:31 am โดย paoonline
อยากลบบัญชี e-mail,gmail,google drive ที่ผูกเข้าไปในโทรศัพท์ sumsung ทำยังไงค่ะ
โดย thatsawan พ 04 ต.ค. 2017 12:34 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
36
พ 04 ต.ค. 2017 12:34 am โดย thatsawan
ชื่อผู้สร้าง อยากทราบผู้สร้างเว็บนี้ค่ะ พอดีจะอ้างอิงในงานวิจัย
โดย บุคคลทั่วไป อ 03 ต.ค. 2017 8:44 pm บอร์ด Programming - PHP
1
61
อ 03 ต.ค. 2017 8:44 pm โดย บุคคลทั่วไป
ประโยชน์ของ Big Data(บิ๊ก ดาต้า)
โดย paoonline อ 03 ต.ค. 2017 6:20 pm บอร์ด Share Knowledge
0
65
อ 03 ต.ค. 2017 6:20 pm โดย paoonline
สอบถามการแชร์ printer จากเครื่อง server
โดย paoonline อ 03 ต.ค. 2017 5:26 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
3
78
อ 03 ต.ค. 2017 5:26 pm โดย paoonline
เปรียบเทียบความเร็วของภาษา php กับ java
โดย Before Dong อ 03 ต.ค. 2017 4:58 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
2414
อ 03 ต.ค. 2017 4:58 pm โดย Before Dong
Oralce ปัญหาเรื่อง font ภาษาไทย (กันกระทู้หาย)
โดย jataz2 อ 03 ต.ค. 2017 3:17 pm บอร์ด SQL - Database
1
36
อ 03 ต.ค. 2017 3:17 pm โดย mindphp
รู้จักกับ AdminLTE Theme(แอดมิน ตีม) ของ Yii2(ยี2) และการติดตั้งโดย Windows 10(วินโดว์ 10)
โดย paoonline อ 03 ต.ค. 2017 1:04 pm บอร์ด PHP Knowledge
0
91
อ 03 ต.ค. 2017 1:04 pm โดย paoonline
รู้จักกับ Google Chart Api(กูเกิ้ลชาร์ตเอพีไอ) แสดงในส่วนลักษณะของกราฟ ด้วยภาษา JavaScript(จาว่าสคลิป)
โดย paoonline จ 02 ต.ค. 2017 7:10 pm บอร์ด Jquery & Ajax Knowledge
1
103
จ 02 ต.ค. 2017 7:10 pm โดย konseo
อยากทราบข้อมูลการย้าย DNS
โดย araxvaan จ 02 ต.ค. 2017 7:05 pm บอร์ด Web Hosting Review - Free Host Share Host VPS
0
52
จ 02 ต.ค. 2017 7:05 pm โดย araxvaan
การวัดประสิทธิภาพโมเดลของ (Data Mining)
โดย paoonline จ 02 ต.ค. 2017 5:36 pm บอร์ด Share Knowledge
0
75
จ 02 ต.ค. 2017 5:36 pm โดย paoonline
จะจัดตั้ง กองทุนสวัสดิการเงินกู้สำหรับพนักงาน ต้องเตรียมอะไรบ้างครับ
โดย M029 จ 02 ต.ค. 2017 3:41 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
23
จ 02 ต.ค. 2017 3:41 pm โดย M029
จ่ายค่าบริการไปต่างประเทศ จะทำยังไงถึงเอามาเป็นต้นทุนได้ครับ
โดย M029 จ 02 ต.ค. 2017 3:34 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
1
48
จ 02 ต.ค. 2017 3:34 pm โดย konseo
สรรพากรมีหนังสือแจ้งว่าจะเข้ามาตรวจการ ต้องเตรียมตัวอย่างไรบ้าง ?
โดย M029 จ 02 ต.ค. 2017 3:30 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
31
จ 02 ต.ค. 2017 3:30 pm โดย M029