NodeJs+mongodb+webSocket开发多人即时聊天室 2017年传ZB客 高清视频+源码 共6.12G / O" e3 a$ x# c& g
课程目标:
如果你是一个前端程序员,你不懂得像PHP、Python或Ruby等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择。Node.js 是运行在服务端的 JavaScript,如果你熟悉Javascript,那么你将会很容易的学会Node.js。可以掌握MongoDB基础知识与操作,并可以使用MongoDB做实战开发。​想要使用NoSQL开发人员,初学MongoDB人员' t- v! p; t' o% _4 o
# `9 n2 Q) a" N$ Z
适用人群:
对计算机或互联网感兴趣者!) c) E Z7 H: G# {, a: K% ]; i
* n( W/ A8 B' Z$ K1 D. `/ O) M
课程简介:
nodejs简介:
Node.js是一个可以让javascript运行在服务器端的平台,它可以让javascript脱离浏览器的束缚运行在一般的服务器下面,你可以用Node.js轻松地进行服务器端应用的开发。Node.js是一个为实时Web应用开发而诞生的平台,它充分考虑了在实时响应和超大规模数据下架构的可扩展性,这使得它摒弃了传统的平台依靠多线程来实现高并发的的设计思路,而采用了单线程,异步式I/O和事件驱动的设计模式。这些特性不仅带来了巨大的性能提升,还减少了多线程程序设计的复杂性,从而提高了开发效率。
websocket:% D! I1 E/ B2 m/ `) u f
websocket协议是html5中的一种新的协议,它实现了浏览器与服务器的全双工通信。传统的我们通过http协议实现即时通讯时是这样做的,首先由浏览器对服务器发出http request(请求),然后服务器响应客户端的浏览器。这种模式所带来的弊端就是浏览器需要不断的向服务器发出请求。但是我们知道http request 的头部(header)非常长,有时客户端请求的只是很小的数据量却要附带这么长的头部信息,这样似乎在浪费网络带宽。而是用websocket协议,这时浏览器和服务器只需要进行一次握手的过程,之后,它们之间便形成了一条快速通道,接着就可以随时互相发送数据。这样不但响应速度快,而且避免了每次都发送请求头。7 A1 \6 |/ x) s; _# n) ?
3 j& e0 c( a& s4 Y
mongodb数据库:% r& }: `1 j3 M1 u8 y$ o& b
mongodb是一个面向文档的非关系型数据库,它具有高性能,易部署,易使用,存储数据方便等优点。它支持的数据结构很松散类似json格式。它也是面向集合的,数据被分组存放在数据集中,每个数据集就是一个集合,每个数据库包含若干个集合。
% }3 v) f$ t X) j- V% i
实现和效果:
下面要介绍的是使用nodejs实现的即时聊天室,主要用到的是websocket协议,数据库中存放用户民和密码。首先服务器打开一个socket端口3000开始监听客户端的连接,接着客户端浏览器建立socket连接,用户登录时填写用户名和密码,服务器端查询mongodb数据库验证用户名和密码是否正确,用户登录聊天室后可以开始发送消息给其它在线的用户8 U7 F/ E0 B3 l; |% o7 Z/ U
9 ^4 |5 W3 e" A
课程目录:
NodeJS第1天
01_NodeJS简介.avi" [$ m* @* j# X8 n$ o
02_NodeJS特性1.avi( z( `$ ~ P5 N
03_NodeJS特性2.avi( q8 q' C; M: q, o
04_HelloWorld.avi5 P: B" K* O* J5 T2 Y
05_NodeJS没有web容器的概念.avi0 O- ~+ ]7 b; v0 I9 L- O
06_http模块简单讲解.avi7 H1 H4 C2 F; x" x& Q/ A
07_http模块.avi( j# S k0 r9 v v: n# `
08_url模块.avi3 w v" o& `) Z4 s
09_url的parse.avi
10_简单的小路由演示.avi
11_探求事件环机制.avi
12_fs模块的功能.avi
13_把异步变同步.avi
14_静态资源文件管理.avi% U$ H* l9 A. A }' t) H" L
3 ^: l# ~; E1 s
NodeJS第2天, P2 ^- f/ V' v& x- _/ E
01_复习.avi
02_复习.avi
03_复习.avi
04_模块的概念.avi
05_文件夹模块和package文件.avi
06_npm.avi; b! | u: w$ S1 V
07_路径.avi
08_post请求.avi; p" w# Y9 l; y$ {
09_formidable.avi# D6 R& R* F" T$ H
10_上传改名.avi4 w b( j% H! g
11_ejs模板引擎.avi8 W( {: F. i: o v. W* }- }
12_jade模板引擎简介.avi5 {6 W3 g* l; k1 K) S' }8 y
13_作业.avi9 {8 t* |; m! i* a; `5 ?0 M
3 v v5 x4 J, p" G+ p- C( Z( Z
NodeJS第3天; m( l1 m! _5 ~
01_Express框架.avi
02_路由.avi5 F# z" U3 A$ Y: i& j
03_中间件.avi# x( ?! {9 z+ w/ O+ K
04_中间件.avi
05_render和send.avi
06_get请求和post.avi. Q4 ?2 l$ |* m( z) a; j# Z
07_缕缕API.avi
08_小小相册.avi$ \" D/ W: G2 q+ j+ \. \% r; K
09_小小相册.avi0 M$ G' \4 E( `/ c! Z6 a* R
10_小小相册.avi
NodeJS第4天( H r0 s9 m% ^
01_后台ejs.avi1 J& x' g. y# c8 j+ P3 ~
02_用Ajax请求数据.avi
03_小小相册(上).avi
04_小小相册(下).avi. A0 u: H; s9 p( O. l# }: P6 T
05_看看老牌数据库.avi
06_NoSQL介绍.avi
07_MongoDB安装.avi
08_MongoDB的使用.avi
09_插入和查找数据.avi
10_插入和查找数据下.avi
11_删除和更改.avi7 H& a* P3 Q7 q) F4 Y6 o
NodeJS第5天
01_复习数据库.avi
02_DAO层的封装.avi* A+ y5 x9 r; p4 t2 \+ L
03_find函数封装和分页.avi- n- i/ y# L/ a# k
04_更改和删除.avi; O) N% v% p; D! W
05_小小留言本.avi
06_小小留言本.avi+ H! P% V' C4 b5 s3 Q5 e* {
07_小小留言本.avi
08_小小留言本.avi3 q) N G2 \7 Q/ c
09_cookie.avi
10_session.avi
11_MD5介绍.avi- h% }: G# Y; g E& Q* @* g9 ?
NodeJS第6天
01_复习.avi
02_md5加密.avi
03_有加密的注册登录表单.avi$ U7 y) v4 z9 \* t
04_加密登陆.avi7 l& p, c9 a' ]: W8 r2 V$ }4 f
05_gm图像处理.avi- z0 ]) P) L) Z: E5 G" ~
06_图像剪裁前台.avi4 v$ C2 S/ Z" [0 d5 o
07_有前台界面的图片剪裁.avi
08_班级说说-初步结构.avi
09_班级说说-注册业务.avi
10_班级说说-登陆业务.avi7 ` l/ i, x& N; U
11_班级说说-上传头像.avi+ {0 u. n9 N' M
12_班级说说-头像上传.avi
NodeJS第7天
01_复习.avi
02_索引.avi. ~3 Q8 M" u" [ y
03_发表说说.avi# N/ C5 R6 y: _- v' v) a, P& k0 f2 d
04_用Ajax列出说说.avi7 J8 F& z4 n4 u
05_首页列出说说.avi
06_分页.avi* T$ G! U2 T6 X' r" p' k" h; r
07_成员列表和用户个人主页.avi
08_用户列表.avi5 R' e; D4 t0 e q7 o
09_mongoose简介.avi
10_mongoose.avi
11_mongoose.avi
NodeJS第8天
01_知识复习.avi
02_mongoose.avi* b) M2 f/ ~# T) ~8 r& b3 L
03_mongoose.avi
04_mongoose.avi" h: ~& k! p8 a) N. L
05_mongoose.avi! m9 g- |# i0 N' \( S
06_mongoose.avi
07_mongoose.avi
08_mongoose.avi
09_webSocket协议介绍.avi/ I' E& E) ?, z' x' X9 \
10_webSocket协议.avi) f8 G; @! ~- M
11_webSocket案例.avi
|