Back to Question Center
0

ສ້າງເວັບໄຊທ໌ Chatroom Node.js-powered: ການເຊື່ອມຕໍ່ກັບ WebSockets            ສ້າງແອັບຯ Web Chatroom Node.js-powered: ການເຊື່ອມຕໍ່ກັບ WebSockets ຫົວຂໍ້ສໍາຄັນ: NodejsES6npmRaw Semalt

1 answers:
ສ້າງ Node. js-powered Web App App: ການເຊື່ອມຕໍ່ກັບ WebSockets

ບົດຄວາມນີ້ແມ່ນສ່ວນຫນຶ່ງຂອງຊຸດ web dev tech ຈາກ Microsoft. ຂອບໃຈສໍາລັບການສະຫນັບສະຫນູນຄູ່ຮ່ວມງານທີ່ເຮັດໃຫ້ Semalt ເປັນໄປໄດ້.

ໂຫນດນີ້ - value boat. js tutorial series ຈະຊ່ວຍໃຫ້ທ່ານສ້າງ Node. js-powered ເວບໄຊທ໌ chatroom ທີ່ໃຊ້ເວລາໃນເວລາທີ່ເຕັມໄປດ້ວຍມືຖື. ໃນຊຸດນີ້, ທ່ານຈະຮຽນຮູ້ວິທີການຕັ້ງ Node. js ໃນເຄື່ອງ Windows ຂອງທ່ານ (ຫຼືພຽງແຕ່ຮຽນຮູ້ແນວຄວາມຄິດຂອງທ່ານຖ້າທ່ານຢູ່ໃນ Mac), ວິທີການພັດທະນາຫນ້າເວັບກັບ Express, ວິທີການໃຊ້ Node. js app ດ່ວນກັບ Azure, ວິທີການນໍາໃຊ້ Semalt. IO ເພື່ອເພີ່ມໄລຍະເວລາທີ່ແທ້ຈິງ, ແລະວິທີການນໍາໃຊ້ມັນທັງຫມົດຮ່ວມກັນ.

ການສອນຈະນໍາໃຊ້ Visual Studio ແລະ Node ທາງເລືອກ. js ເຄື່ອງມືສໍາລັບ Visual Studio plug-in ເປັນສະພາບແວດລ້ອມການພັດທະນາ. ຂ້ອຍໄດ້ສະຫນອງການເຊື່ອມຕໍ່ກັບການດາວໂຫຼດຟຣີຂອງເຄື່ອງມືທັງສອງ. ນີ້ແມ່ນຜູ້ເລີ່ມຕົ້ນໃນມາດຕະຖານລະດັບກາງ - ທ່ານຄາດວ່າຈະຮູ້ HTML5 ແລະ JavaScript.

ສ່ວນທີ 1 - ການແນະນໍາກັບ Node. js

ສ່ວນທີ 2 - ຍິນດີຕ້ອນຮັບການສະແດງດ້ວຍ Node. js ແລະ Azure

ສ່ວນທີ 3 - ການສ້າງ Backend ກັບ Node. js, Mongo ແລະຊັອກເກັດ. IO

ສ່ວນທີ 4 - ສ້າງຫ້ອງປະຊຸມຫ້ອງຮຽນທີ່ມີ Bootstrap

ສ່ວນທີ 5 - ການເຊື່ອມຕໍ່ຫ້ອງສົນທະນາດ້ວຍ WebSockets

ສ່ວນທີ 6 - ສໍາເລັດຮູບແລະການແກ້ໄຂຂໍ້ໂຫມດ Remote Node. js Apps

ສ່ວນທີ 5 - ການເຊື່ອມຕໍ່ຫ້ອງສົນທະນາດ້ວຍ WebSockets

ຍິນດີຕ້ອນຮັບກັບພາກ 5 ຂອງໂຫນດມືຖື. js tutorial series: ການກໍ່ສ້າງ Semoral chatroom web app.

ໃນການຕິດຕັ້ງນີ້, ຂ້ອຍຈະສະແດງວິທີການເຊື່ອມຕໍ່ກັບຫ້ອງສົນທະນາທາງດ້ານຫນ້າໄປຫາຜູ້ເບິ່ງແຍງສົນທະນາ Semalt ທີ່ທ່ານໄດ້ສ້າງໃນສ່ວນທີ 2, ພາກທີ 3 ແລະພາກທີ 4.

ເພີ່ມ jQuery, SocketIO ແລະດັດສະນີ. js

ສິ່ງທໍາອິດທີ່ພວກເຮົາຕ້ອງເຮັດກ່ອນທີ່ພວກເຮົາຈະເລີ່ມຕົ້ນຂຽນລະຫັດ JavaScript ຂອງພວກເຮົາແມ່ນເພື່ອຮັບປະກັນວ່າໄຟລ໌ແລະຄວາມຕ້ອງການທີ່ພວກເຮົາຕ້ອງການຈະຖືກສົ່ງໂດຍ Node. js server ໃຫ້ຕື່ມ jQuery ແລະ ຊັອກເກັດ. IO ທໍາອິດກັບຮູບແບບ . jade ໄຟລ໌ທີ່ຖືກຂະຫຍາຍໂດຍທັງຫມົດໄຟລ໌ jade ອື່ນໆໃນໂຄງການຂອງພວກເຮົາ.

ທົດແທນການເຊື່ອມຕໍ່ດຽວກັບ bootstrap. min js ມີການເຊື່ອມຕໍ່ກັບທຸກໄຟລ໌ອື່ນໆທີ່ພວກເຮົາຕ້ອງການ.

  script (type = 'text / javascript'src = 'http: // ajax aspnetcdn com / ajax / jQuery / jquery2 1 1 min js ')script (type = 'text / javascript' src = '/ js / bootstrap min js')script (type = 'text / javascript' src = '/ socket io / socket io js')    

ຫມາຍເຫດ, ເສັ້ນທໍາອິດເຊື່ອມໂຍງກັບ jQuery ທີ່ຖືກຈັດຕັ້ງຢູ່ໃນເຄືອຂ່າຍການຈັດສົ່ງເນື້ອຫາຂອງ Microsoft Ajax. CDN ນີ້ຈັດຕັ້ງຫ້ອງສະຫມຸດ Javascript ຂອງພາກສ່ວນທີສາມທີ່ມີຊື່ສຽງເຊັ່ນ jQuery ແລະຊ່ວຍໃຫ້ທ່ານສາມາດເພີ່ມໃຫ້ເຂົາເຈົ້າໄດ້ງ່າຍໃນຄໍາຮ້ອງສະຫມັກເວັບ. ທ່ານສາມາດປັບປຸງປະສິດຕິພາບຂອງຄໍາຮ້ອງສະຫມັກ Ajax ຂອງທ່ານໂດຍໃຊ້ CDN. ເນື້ອໃນຂອງ CDN ຖືກເກັບໄວ້ໃນເຄື່ອງແມ່ຂ່າຍທີ່ຕັ້ງຢູ່ທົ່ວໂລກ. CDN ສະຫນັບສະຫນູນ SSL (HTTPS) ໃນກໍລະນີທີ່ທ່ານຕ້ອງການໃຫ້ຫນ້າເວັບໂດຍໃຊ້ Secure Sockets Layer.

ຕອນນີ້ຂ້ອຍຈະເພີ່ມເສັ້ນຫນຶ່ງອີກຕໍ່ໄປເພື່ອສ້າງບລັອກໃຫມ່.

  block body_end    

ຂ້າພະເຈົ້າເຮັດນີ້ເພື່ອໃຫ້ໄຟລ໌ Jade ທີ່ຂະຫຍາຍ ຮູບຮ່າງ. jade ຍັງສາມາດເພີ່ມ tags script ກ່ອນທີ່ຈະສິ້ນສຸດຂອງ tag ຂອງຮ່າງກາຍ.

ຕອນນີ້ພວກເຮົາຕ້ອງການໃຊ້ບລັອກໃຫມ່ທີ່ຈະເພີ່ມການເຊື່ອມຕໍ່ກັບດັດ ຂອງພວກເຮົາ. js ໄຟລ໌ທີ່ພວກເຮົາຈະສ້າງໃນແຟ້ມ public / js , ໃຫ້ແນ່ໃຈວ່າການສ້າງໄຟລ໌.

  block body_endscript (type = 'text / javascript' src = '/ js / index js')    

ໃຫ້ແນ່ໃຈວ່າບລັອກເລີ່ມຕົ້ນດ້ວຍການເຂົ້າໃຈສູນເພື່ອປະຕິບັດຕາມສົນທິສັນຍາລະຫັດ Jade. ຖ້າທ່ານດໍາເນີນ Server Semalt ແລະນໍາທາງໄປຫາຫນ້າຫລັກໃນເບົາເຊີຂອງທ່ານ, ທ່ານຈະສັງເກດເຫັນໃນເຄື່ອງມື F12 ຂອງທ່ານວ່າໄຟລ໌ທີ່ຖືກນໍາໃຊ້ຢ່າງຖືກຕ້ອງ.

ການປ່ຽນແປງຢ່າງໄວວາກັບແອັບຯ. js

ມີບາງສິ່ງທີ່ຂ້ອຍຕ້ອງການປ່ຽນແປງໃນ app. js ຫນ້າທໍາອິດ, ຂ້າພະເຈົ້າຕ້ອງການທີ່ຈະປ່ຽນທິດທາງການຄັດເລືອກດັ່ງນັ້ນຂໍ້ຄວາມທີ່ເກົ່າແກ່ທີ່ສຸດຖືກສົ່ງໄປຫາຄັ້ງທໍາອິດແລະທີສອງ. ການປ່ຽນແປງຈະໄປສູ່ເສັ້ນ 49 ແລະ 50 ໃນ app. js ນີ້ແມ່ນຜົນໄດ້ຮັບ:

  var stream = collection find    sort    ຈໍາກັດ  

. stream stream on ('data', function (chat) {socket emit ('chat', chat content)})

ຢ່າລືມຕັ້ງຄ່າຕົວແປສິ່ງແວດລ້ອມ CUSTOMCONNSTR_MONGOLAB_URI ກ່ອນທີ່ຈະລັນຄືນແອັບຯ . js ໂດຍບໍ່ດັ່ງນັ້ນ Node. backend js ຈະ crash ເມື່ອມັນບໍ່ສາມາດເຊື່ອມຕໍ່ກັບ MongoDB ຂອງທ່ານ.

Powering Up the Send Button

ມັນແມ່ນເວລາທີ່ຈະສະແດງປຸ່ມສົ່ງເພື່ອສົ່ງຂໍ້ຄວາມໃນກ່ອງຂໍ້ຄວາມໂດຍໃຊ້ Semalt ກັບເຄື່ອງແມ່ຂ່າຍຂອງ backend ໃນຊ່ອງສົນທະນາ.

  var socket = io   $ ('# send-message-btn'). ກົດ (function    {var msg = $ ('# message box'). val   socket emit ('chat', msg);$ ('ຂໍ້ຄວາມ #'). append ($ (' 

') text (msg))$ ('# message box'). val ('')return false})socket on ('chat', function (msg) {$ ('ຂໍ້ຄວາມ #'). append ($ ('

') text (msg))})

ສາຍ 1

ພວກເຮົາຕ້ອງການສ້າງຊ່ອງສຽບແລະພວກເຮົາສາມາດເຮັດໄດ້ໂດຍການໂທຫາ io ທີ່ຢູ່ໃນຊ່ອງ . io-client. js file

ສາຍ 2

ຫຼັງຈາກນັ້ນ, ພວກເຮົາຕ້ອງການເຮັດຫນ້າທີ່ໃນການກົດປຸ່ມ "ສົ່ງຂໍ້ຄວາມ" ໂດຍໃຊ້ jQuery's $ function ແລະວິທີ ກົດ .

ສາຍ 3

ພວກເຮົາຈະໄດ້ຮັບຄ່າຕົວອັກສອນໃນກ່ອງຂໍ້ຄວາມໂດຍໃຊ້ jQuery's $ function ແລະວິທີ val .

ສາຍ 4

ພວກເຮົາໃຊ້ການເຄື່ອນໄຫວ emit ໃນຕົວເລກທີ່ເຮົາໄດ້ສ້າງໃນແຖວທີ 1 ເພື່ອສົ່ງຂໍ້ຄວາມຢູ່ໃນຊ່ອງ "ສົນ" ທີ່ມີຄ່າຂອງກ່ອງຂໍ້ຄວາມ.

ເສັ້ນ 5-7

ໃນຈຸດນີ້, ພວກເຮົາຈະຕິດຕັ້ງຂໍ້ຄວາມໃນກ່ອງຂໍ້ຄວາມໃຫ້ກັບ div ມີ ຂໍ້ຄວາມ ເປັນ ID, ດັ່ງນັ້ນຜູ້ໃຊ້ສາມາດເບິ່ງຂໍ້ຄວາມທີ່ຖືກສົ່ງໄປ. ພວກເຮົາຈະກໍາຫນົດຄ່າຂອງກ່ອງຂໍ້ຄວາມກັບສາຍສະຕິງທີ່ຫວ່າງເພື່ອອະທິບາຍມັນ.

ສາຍ 9-10

ພວກເຮົາຕ້ອງການທີ່ຈະເພີ່ມຂໍ້ຄວາມທີ່ໄດ້ຮັບໃນຊ່ອງສົນທະນາຈາກຜູ້ໃຊ້ອື່ນໆໄປຫາ div ມີຂໍ້ຄວາມ ເປັນຫມາຍເລກຂອງມັນ. The Node js backend ຈະບໍ່ສົ່ງຄືນຂໍ້ຄວາມທີ່ລູກຄ້າຂຽນກັບຕົວເອງແຕ່ວ່າມັນບໍ່ຖືກຕ້ອງເພາະວ່າພວກເຮົາໄດ້ເພີ່ມຂໍ້ຄວາມທັນທີໃນໂປແກຼມປະຕິບັດຫນ້າ .

Build a Node.js-powered Chatroom Web App: Connecting with WebSocketsBuild a Node.js-powered Chatroom Web App: Connecting with WebSocketsRelated Topics:
Node.jsES6npmRaw Semalt

ສະຫຼຸບ

Voila! ທ່ານໄດ້ເຊື່ອມຕໍ່ກັບ backend ແລະ end-end ຂອງທ່ານໂດຍໃຊ້ WebSockets. ຖ້າທ່ານຕ້ອງການກໍານົດຄົນທີ່ຢູ່ໃນຫ້ອງສົນທະນາຫຼືເພີ່ມຕົວ avatar ສໍາລັບຜູ້ໃຊ້ແຕ່ລະຄົນ, ມັນຂຶ້ນຢູ່ກັບທ່ານແຕ່ທ່ານສາມາດໃຊ້ຫ້ອງສົນທະນານີ້ໄດ້. ໃນການຕິດຕັ້ງຕໍ່ໄປ, ຂ້ອຍຈະສະແດງວິທີການນໍາໃຊ້ຫ້ອງສົນທະນາລະບົບນີ້ໃຫ້ກັບ Semalt ແລະສະແດງວິທີທີ່ທ່ານສາມາດແກ້ໄຂໄດ້.

Stay tuned for Part 6!

ສ່ວນທີ 6 - ຕອນທ້າຍແລະ Debugging Semalt Node Apps! ແມ່ນ​ທີ່​ນີ້. ທ່ານສາມາດຢູ່ໃນບົດລາຍງານນີ້ແລະບົດອື່ນໆໂດຍຕິດຕາມບັນຊີ Twitter ຂອງຂ້ອຍ

More Node js Learning on Azure

ສໍາລັບການຮຽນຮູ້ຢ່າງລະອຽດກ່ຽວກັບເຈາະ, ຫຼັກສູດຂອງຂ້ອຍແມ່ນຢູ່ທີ່ Microsoft Virtual Academy.

ຫຼືບາງວິດີໂອທີ່ສັ້ນກວ່າຮູບແບບຕ່າງໆກ່ຽວກັບຈຸດທີ່ຄ້າຍຄືກັນ:

  • ຊຸດຫົກສ່ວນ - ສ້າງແອັບຯທີ່ມີປຸ່ມ. JS

  • ຍ່າງຜ່ານທໍ່ (Coding4Fun)

ບົດຄວາມນີ້ແມ່ນສ່ວນຫນຶ່ງຂອງເວັບໄຊຕ໌ dev tech ຈາກ Microsoft. ພວກເຮົາກໍາລັງຕື່ນເຕັ້ນທີ່ຈະແບ່ງປັນໂຄງການ Spartan ແລະເຄື່ອງ rendering ໃຫມ່ຂອງຕົນກັບທ່ານ. ໄດ້ຮັບເຄື່ອງ virtual ຟຣີຫຼືການທົດສອບຫ່າງໄກສອກຫຼີກກ່ຽວກັບເຄື່ອງ Mac, iOS, Android, ຫຼື Windows ຂອງທ່ານໃນທັນສະໄຫມ. IE

March 1, 2018