《基于Node.js实现简易聊天室系列之项目前期工作》
生活随笔
收集整理的這篇文章主要介紹了
《基于Node.js实现简易聊天室系列之项目前期工作》
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
前期工作主要包括:項(xiàng)目的創(chuàng)建,web服務(wù)器的創(chuàng)建和數(shù)據(jù)庫(kù)的連接。 項(xiàng)目創(chuàng)建 網(wǎng)上關(guān)于Node.js項(xiàng)目的創(chuàng)建的教程有很多,這里不必贅述。Demo所使用的Node.js的框架是express,版本為4.0以上。 首先我們需要安裝express,在控制臺(tái)輸入express -e項(xiàng)目名,回車(chē)即可生成相應(yīng)地一些文件。 簡(jiǎn)要地說(shuō)一下Demo依賴(lài)的模塊。在這個(gè)項(xiàng)目的根目錄下的package.json文件中將內(nèi)容修改如下圖所示。 前四項(xiàng)是Demo的大概說(shuō)明,包括作者、描述、版本、隱私等,最后一項(xiàng)dependencies是Demo所依賴(lài)的模塊及其對(duì)應(yīng)地版本號(hào)。了解Node.js基礎(chǔ)的都知道,控制臺(tái)進(jìn)入到項(xiàng)目的路徑,輸入npm install即可安裝這些模塊。 Web服務(wù)器的創(chuàng)建 在上一步的工作中,實(shí)際上一個(gè)web服務(wù)器默認(rèn)已經(jīng)創(chuàng)建了,地址以及端口號(hào):http://localhost:3000 ? ? npm start啟動(dòng)該項(xiàng)目,出現(xiàn)如下圖所示,即說(shuō)明服務(wù)器啟動(dòng)成功 打開(kāi)瀏覽器,在地址欄輸入上述的url,會(huì)出現(xiàn)如下圖所示
?
統(tǒng)統(tǒng)這些都是默認(rèn)的,創(chuàng)建項(xiàng)目時(shí)我們需要初始化,至于如何初始化,這里也不詳細(xì)介紹了。 聊天室Demo的目錄結(jié)構(gòu)如下圖所示 需要說(shuō)明的是node_modules文件夾中是存放Demo依賴(lài)的模塊。其他的文件夾(文件)除了css及js相關(guān)插件均可自定義創(chuàng)建。 在server.js中創(chuàng)建服務(wù)器和連接服務(wù)器,代碼如下: 1 var express = require('express'), 2 cookieParser = require('cookie-parser'), 3 bodyParser = require('body-parser'), 4 http = require('http'), 5 path = require('path'), 6 io = require('socket.io'), 7 mongoose = require('mongoose'), 8 app = express(), 9 db, 10 userRoutes, 11 socketIO; 12 13 /* 數(shù)據(jù)庫(kù)連接 */ 14 mongoose.connect('mongodb://localhost:27017/chatroom'); 15 db = mongoose.connection; 16 db.on('error', console.error.bind(console, '數(shù)據(jù)庫(kù)連接失敗!')); 17 db.once('open', function callback() { 18 console.log('數(shù)據(jù)庫(kù)連接成功!'); 19 }); 20 21 /*Express 配置*/ 22 app.use(cookieParser()); 23 app.use(bodyParser.json()); 24 app.use(bodyParser.urlencoded({ extended: true })); 25 app.use(express.static(path.join(__dirname, 'public'))); 26 27 28 http=http.createServer(app,function(req,res){ 29 res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'}); 30 }); 31 io = io(http); 32 33 indexRoutes = require('./routes/index')(app); 34 userRoutes = require('./routes/users')(app); 35 36 /*綁定io到服務(wù)器上*/ 37 socketIO = require('./socketIO')(app, io); 38 39 http.listen(3000, function () { 40 console.log('listening on *:3000'); 41 }); View Code?
在控制臺(tái)啟動(dòng)Demo,出現(xiàn)如下圖所示,則說(shuō)明服務(wù)器連接成功,當(dāng)然之前需要開(kāi)啟mongoDB?
另外,有兩個(gè)小技巧可以提高開(kāi)發(fā)效率。 1.控制臺(tái)清屏,輸入cls 2.關(guān)閉服務(wù)器或者是退出當(dāng)前程序(命令)快捷鍵 ctrl+C轉(zhuǎn)載于:https://www.cnblogs.com/jiangcheng-langzi/p/7016488.html
總結(jié)
以上是生活随笔為你收集整理的《基于Node.js实现简易聊天室系列之项目前期工作》的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: GIT 源码管理-简介
- 下一篇: 递归方法:对于树形结构的表,根据当前数据