摘要:技術棧項目背景這個項目主要是為了玩玩,項目的方向大概是做出類似的在線聊天系統。項目使用進行部署和管理,功能在不斷的迭代開發中。首頁用戶列表用戶中心注冊登陸注銷用戶資料指定聊天室開始安裝使用之前,請在中修改的安裝路徑。
技術棧:NodeJS & SocketIO & Express & EJS & MongoDB & Gulp
項目背景
這個項目主要是為了玩玩NodeJS,項目的方向大概是做出類似QQ的在線聊天系統。想要在線體驗可以點擊在線演示。
項目使用PM2進行部署和管理,功能在不斷的迭代開發中。如果你覺得這個項目比較有趣,或者能對你有所幫助,歡迎給個Star。
項目地址:https://github.com/bergwhite/nchat
PS: 最近找工作,北京的歡迎聯系。另外之前做過一個基于Vue全家桶二次開發的V2EX社區 https://github.com/bergwhite/v2ex-vue。
項目目錄
├─bin │ www // 啟動express ├─database │ index.js // MongoDB ├─public // 靜態文件 │ css │ index.css // 首頁CSS │ js │ index.js // 與socket服務進行通訊(關鍵文件) | socket-server.js // socket服務(關鍵文件) │ img ├─routers │ index.js // 頁面路由 ├─view │ error.ejs // 錯誤頁 │ index.ejs // 首頁 │ userCenter.ejs // 用戶中心(規劃中) │ userList.ejs // 用戶列表(規劃中) ├─app.js // express ├─package.json // npm包
路由
目前只有/目錄和/room/:id正式使用了,其他路由的頁面還在迭代開發中。
/ // 首頁 /user // 用戶列表 /user/:id // 用戶中心 /user/:id/register // 注冊(JSON) /user/:id/login // 登陸(JSON) /user/:id/logout // 注銷(JSON) /user/:id/info // 用戶資料(JSON) /room/:id // 指定聊天室
開始安裝
使用之前,請在package.json中修改MongoDB的安裝路徑(--dbpath)。
git clone https://github.com/bergwhite/nodejs-chat // 克隆項目到本地 cd nodejs-chat // 進入項目目錄 npm install // 安裝依賴 npm run build // 構建線上代碼 npm run mongod // 啟動MongoDB服務 npm run start // 啟動聊天室服務并啟動網站
項目演示
目前項目存在一個已知的bug,表情包無法在div模擬的輸入框中插入(修復中)。
匿名聊天
用戶聊天
成員&房間
離線通知
更多房間
房間獨立
已上線功能
跨瀏覽器,跨地域聊天(SocketIO自帶技能)
首次進入會顯示歡迎信息
發送空消息會進行提示
直接發送消息默認昵稱為“神秘人”
發送消息后會清空當前輸入框內容,然后焦點回到消息輸入框
添加用戶名后會成為新用戶,然后告知全房間人有新用戶加入
可以創建不同的房間,不同的房間的聊天是相互獨立的
顯示當前房間的在線用戶(設置了用戶名的)
顯示目前所有打開的房間
用戶(設置了用戶名的)離線會通知所有房間內的成員
壓縮線上代碼,加快訪問速度
...
待上線功能
用戶名
統計匿名用戶
支持一鍵隨機獲取用戶名
頭像
訪客使用默認頭像
新用戶(設置了用戶名的)隨機獲得一個頭像
新用戶換頭像可以從默認的一組頭像中選擇
是否支持上傳頭像還在考慮中(安全性問題)
聊天
支持多組豐富的表情包
是否支持上傳圖片還在考慮中(安全性問題)
數據庫
對接MongoDB,新用戶(設置了用戶名的)設置密碼后,將從臨時用戶轉變為正式用戶
項目缺陷
界面丑(等功能完善了再考慮)
表情包無法在div模擬的輸入框中插入(修復中)
...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/83270.html
摘要:技術棧項目背景這個項目主要是為了玩玩,項目的方向大概是做出類似的在線聊天系統。項目使用進行部署和管理,功能在不斷的迭代開發中。首頁用戶列表用戶中心注冊登陸注銷用戶資料指定聊天室開始安裝使用之前,請在中修改的安裝路徑。 技術棧:NodeJS & SocketIO & Express & EJS & MongoDB & Gulp 項目背景 這個項目主要是為了玩玩NodeJS,項目的方向大概...
摘要:技術棧覺得好的歡迎點個。前端后端部署演示全棧式的開發多人在線聊天室項目只適配了移動端,請使用瀏覽器的手機視圖查看。之前刪除了一個文件,但是沒有刪除中的對應值。編譯時會報上面的錯誤。 技術棧 覺得好的歡迎點個star ^_^。 前端:Express & EJS & ES6 & Less & Gulp 后端:Express & SocketIO & MongoDB & REST API ...
摘要:系統結構系統考慮使用和實現服務器端邏輯,前端使用。邏輯流程主要邏輯包括用戶進入游戲等待對家進入游戲游戲過程結束統計這個過程。 1. 系統結構 系統考慮使用Nodejs和SocketIo實現服務器端邏輯,前端使用HTML5。showImg(https://segmentfault.com/img/remote/1460000007643089); 2. 邏輯流程 1 . 主要邏輯包括用戶...
摘要:系統結構系統考慮使用和實現服務器端邏輯,前端使用。邏輯流程主要邏輯包括用戶進入游戲等待對家進入游戲游戲過程結束統計這個過程。 1. 系統結構 系統考慮使用Nodejs和SocketIo實現服務器端邏輯,前端使用HTML5。showImg(https://segmentfault.com/img/remote/1460000007643089); 2. 邏輯流程 1 . 主要邏輯包括用戶...
閱讀 2204·2021-10-13 09:39
閱讀 3408·2021-09-30 09:52
閱讀 800·2021-09-26 09:55
閱讀 2774·2019-08-30 13:19
閱讀 1888·2019-08-26 10:42
閱讀 3185·2019-08-26 10:17
閱讀 543·2019-08-23 14:52
閱讀 3631·2019-08-23 14:39