Tổng quan về nodejs tạo cảm hứng học nodejs với việc tạo boot chat facebook

chào các bạn.!

Trong thời gian lưu lạc ở cái ngành trong chán ngoài thèm danh oai phận hèn mang tên IT, thì mình có gặp được khá nhiều các senior về javascript thực sự thì mình cũng không thích javascript cho lắm vì nó khó với 1 thằng ngoại đạo như mình nên cũng không để tâm lắm về cái món js này lắm . Dạo gần đây có quen được một ông chuyên code java mà lão cứ xúi mình học nodejs theo lời lão thì nodejs nó là được nhiều thứ lắm nên cũng có mày mò 1 chút về nodejs xem có như lời đồn không.

Trước khi học một thứ gì đó thường là mình sẽ google mấy cái tool được viết bằng ngôn ngữ đó để tạo cảm hứng khi bắt tay vào học, qua một hồi google thì mình quyết định viết 1 tool về boot message facebook vì thấy nó khá là hay.

Ok bắt đầu nào.

Giới thiệu:

  Nodejs  là một nền tảng platform chạy trên môi trường V8 JavaScript runtime  nó không phải là 1 framework cũng phải là một ngôn ngữ lập trình mà chỉ đơn giản là một chương trình được viết đa phần bằng javascript, được tạo bởi Ryan Dahl từ năm 2009, và phát triển dưới sự bảo trợ của Joyent. nó được dùng đa phần để phát truyển các ứng dụng web server, đặc biệt là các ứng dụng realtime(thời gian thực ) vì tốc độ của nó khá nhanh vì phần core của nó được viết bằng C++

ưu điểm:  

  • Tốc độ xử lý nhanh
  • Cộng đồng đông, nhiều thư viện hay
  • Hiệu suất cao, có thể xử lý đồng thời hàng hàng trăm nghìn yêu cầu cùng lúc và trả ra cùng một luồng

Nhược điểm: 

  • Tiêu tốn tài nguyên về phần cứng hơn so với các ngôn ngữ khác vì nó được xây dựng ở cả javascript và C++
  • Khó tiếp cận vì tài liệu tiếng việt về nodejs khá ít ỏi

 

cài đặt: 

việc cài đặt nodejs khá là easy bạn chỉ việc truy cập https://nodejs.org download bộ cài và cài đặt như 1 phần mềm bình thường

Tạo ứng dụng đầu tiên:

Có lẽ việc ứng dụng Hello world  là 1 huyền thoại với bất kì một lập trình viên nào đó khi mới bắt tay vào học một ngôn ngữ mới . Nhưng ở đây mình là một người ngoại đạo cái mình quan tâm là sản phẩm vì thế mình sẽ bỏ qua việc tạo ứng dụng Hello world mà sẽ nhập môn bằng một tool chat bot facebook :))

chúng ta tạo 1 folder mang tên nodejs ngoài desktop kích vào thanh địa chỉ gõ cmd để mở CMD của folder nodejs lên  như hình

để tạo 1 project ta gõ npm init và điền các thông tin như hình

thành quả ta được file package.json 

 

Bây giờ chúng ta cần 1 IDE để gõ code mình chọn visual  code  mở thư mục nodejs vừa tạo ở trên lên tạo một file mới mang tên index.js 

Ok tạo xong để đó đã giờ chúng ta cần install 2 thư viện chính gồm request để xử lý các request http và facebook-chat-api để xử lý login, và xử lý nhận, lấy dữ liệu từ facebook message

mở cmd của folder nodejs lên tiến hành install 2 thư viện trên vào project của các bạn

khi install xong thì project của các bạn sẽ xuất hiện thư mục node_modules thư mục này để chứa các thư viện mà ta vừa install vào

 

ok giờ bắt đầu vào code file index.js chúng ta import 2 thư viện đã trên vào vào index

var request = require(“request”);
var facebook = require(“facebook-chat-api”);
và thực hiện viết xử lý call api chat

trong đó

  • Email:  email facebook của bạn
  • Password: pass facebook của bạn

ok giờ chúng ta sẽ viết xử lý trong function callback  để thực hiện nhận và gửi dữ liệu chúng ta cần lắng nghe các thay đổi từ facebook message trả về mỗi khi có tin nhắn mới, có nghĩa là listen sẽ được call khi có tin nhắn mới từ facebook.

ok vậy giờ chúng ta thử viết 1 câu trả lời lại tin nhắn đó bằng sendMessage

ok giờ chúng ta sẽ chạy thử mở cmd của thư mục nodejs  gõ node index.js để chạy file index

đăng nhập 1 nick facebook khác để gửi tin nhắn tới nick facebook bạn vừa login trên index.js thành quả như sau

nhưng như vậy thì hơn chán bậy giờ chúng ta cần trả lời tin nhắn như người dùng thật sự,  vậy phải làm thế nào ta cần 1 API simsimi hoặc có thể dùng API

https://devtayto.com/tool/simsimi.php?text=noi dung

bây giờ chúng ta sẽ sử dụng thư viện request để request tới API trò chuyện simsimi ta sửa 1 chút như hình

 

Và thành quả

 

ngoài ra bạn có thể thêm tính năng khác tùy bạn tự mày mò nhé

Vậy là qua con bot facebook đã chứng minh cho chúng ta thấy việc code các ứng dụng realtime bằng nodejs thật là dễ dàng và tiện lợi chỉ có vài dòng code đã có thể tạo ra những app hay ho và bổ ích rồi, hẹn gặp lại các bạn ở bài sau

Chúc các bạn thành công.!

download source