|
|
第1章 课程介绍/ W7 u1 x! p- a+ W& f
包括课程概述、核心模块、核心技术、课程安排、课程收获、讲授方式、学习前提等方面的介绍,让同学们对课程项目有一个直观的了解。& b N X6 q6 K$ R
" d* p9 O0 C" [
1-1 课程导读. J4 b! `9 A2 n6 w- e
( i5 k# m6 V9 r& G" h第2章 nodejs 介绍, _4 |+ h% ^4 l( |# e& T- M
本章主要为了照顾尚未入门或者刚刚入门 nodejs 的同学,介绍 nodejs 的下载、安装和基本使用,以及 nodejs 和前端 javascript 的区别。另外,重点介绍了服务端开发和前端开发思路上的区别,为后续的开发做一个基础的铺垫。
6 P5 I1 H* c0 U* T! J2 `1 I 2-1 下载和安装
' u9 o$ @! T, u2 l' w6 l 2-2 nodejs和js的区别, Y# i8 w* x0 j# z
2-3 commonjs-演示
6 G/ j0 T+ C8 g* {+ Y 2-4 debugger
, [2 \& A: g B0 ^ 2-5 server端和前端的区别
3 M I5 K0 l1 H2 A. g 2-6 总结/ q+ F5 @: w2 H ^) _( h
# z! Y9 { |& r p& d% \9 E# [
第3章 项目介绍
6 k. M8 G# Q7 y8 B5 I' h课程是通过案例的形式来学习 nodejs ,本章先来介绍这个案例,即个人博客项目。包括需求分析、原型图设计、以及 server 端的技术方案设计。有了详细的设计方案,才能指导后续的实际开发。
1 D4 Q k, M% d4 W3 f 3-1 项目需求分析0 R4 j: W$ z. Q ^# j8 G, b
3-2 技术方案, v: D" W; Q; V5 x+ {
3 i! ^2 a0 m& ~6 w/ f6 u3 ^9 j7 N/ ]
第4章 开发博客项目之接口: t4 M- F1 P9 M! h. T
要开发一个博客项目的 server 端,首先要实现技术方案设计中的各个 API 。本章主要讲解如何使用原生 nodejs 处理的 http 请求,包括路由分析和数据返回,然后代码演示各个 API 的开发 。但是本章尚未连接数据库,因此 API 返回的都是假数据。...4 m% Z$ v2 ^8 G1 R* h( k, i
4-1 http-概述 G$ W- y% Q, J* [
4-2 处理get请求 试看5 \+ U$ d: i4 L5 C' C+ }
4-3 处理post请求
/ f" E5 X1 F2 p% I9 T. t$ S! A 4-4 处理http请求的综合示例# W+ F: t+ H- d
4-5 搭建开发环境
3 S3 }. l9 V* R5 `- P 4-6 初始化路由+ \9 |' [) F; n- e1 P1 C1 K3 Z$ s% J
4-7 开发路由(博客列表路由)_1. q) ?; l; N* w- Q! @. S3 z z
4-8 开发路由(博客详情路由)
* |; `$ U0 V& J) u, o4 s 4-9 开发路由(处理 POSTData)7 e, v+ p/ z2 t3 t8 Y
4-10 开发路由(新建和更新博客路由)
6 L3 R( i8 a) G! O 4-11 开发路由(删除博客路由和登录路由)
" c; \' m1 o& q% K s4 n) y& D 4-12 补充:路由和API3 X8 a+ Y5 I$ b4 q; @- x
5 X4 q! @" n2 O% X
第5章 开发博客项目之数据存储
) a3 h4 m7 s8 d( n3 M' C: F$ m+ mAPI 实现了,就需要连接数据库,实现真正的数据存储和查询,不再使用假数据。本章主要讲解 mysql 的安装、使用,以及用 nodejs 连接 mysql ,最后将 mysql 应用到各个已经开发完的 API 中。
9 r; _( B- e6 r1 P0 ^ 5-1 MySql 介绍 试看) L; k; |( ^% k/ F
5-2 数据库操作(创建和增、删、查)0 G. @ _* y* C& @1 a$ P0 }0 Y
5-3 数据库操作(更新)/ U* g& k9 N0 w! t3 H2 E7 r V8 C6 V! j& S
5-4 nodejs操作 mysql W% q2 Y) U K; M
5-5 nodejs 链接 mysql 做成工具2 ?& l1 n0 d7 |3 B0 h+ D$ C8 ]% E
5-6 API对接mysql(博客列表)( \6 Q0 t" I$ ^8 k6 u" t& f
5-7 API对接mysql(博客详情和新建)
M7 j( H! A E/ S! v6 l) o 5-8 API对接mysql(博客更新和删除)
b- H8 c. T0 @& F6 i 5-9 API对接mysql(登录)
# j& p& @5 Q7 v& J, {! N: p 5-10 总结
2 q1 ^& y) C' _: m* j# H7 a8 Z2 g/ y6 r- r' ^ m
第6章 博客项目之登录
4 G& g0 ^7 ?7 {5 D用户登录是博客项目的主要功能之一,本章主要讲解如何使用原生 nodejs 实现登录。包括 cookie session 的介绍和使用,以及为了扩展性和性能使用 redis 来存储 session 。最后,通过 nginx 配置联调环境,和前端页面联调。本章内容较多,对于前端开发人员来说,新概念也较多,是本课程学习上的挑战。...
, ~$ b; Z) d* |6 S4 T6 ]0 s% W; s 6-1 开始6 J! A; J! q# J7 R; g k
6-2 cookie-介绍
4 P$ `5 \7 O; Q6 q+ i8 [4 S! R 6-3 cookie用于登录验证
: E/ L9 J b1 s# C8 M 6-4 cookie做限制(1)
( G% y0 X8 m% H4 {! |- `$ w/ ?5 X c 6-5 cookie做限制(2)
# m+ P; e& g. _# c 6-6 session介绍
% M/ {/ o! M0 i 6-7 session演示8 \1 i% O4 a9 M) Q. l/ L
6-8 从 session 到 redis, M$ {. ]8 C* N, y9 c! R. j
6-9 redis介绍
5 O$ o% Q1 u4 j+ x$ z' ^ 6-10 nodejs链接redis的demo
& v8 g r; ^6 r6 J4 q" D 6-11 nodejs连接redis-封装工具函数0 l4 E4 Z6 |# i# c' K( m) _
6-12 session存入redis
8 I- p2 o4 L4 W* R8 h0 @7 B 6-13 完成server端登录的代码 T: j% ]( Z8 D" h% O* R2 }. {
6-14 联调-介绍html页面
! x; [; Q, |7 V. h0 x. m& i 6-15 nginx配置
# i8 ] g1 Z) H. g 6-16 联调演示与总结: h3 q8 g- a/ v+ S8 v9 A n6 ?
1 T U. l' G: t
第7章 博客项目之日志2 e9 n5 |0 P1 e, c
日志记录和日志分析是 server 端的重要模块,前端涉及较少。本章主要讲解如何使用原生 nodejs 实现日志记录、日志内容分析和日志文件拆分。其中包括 stream readline 和 crontab 等核心知识点。: l2 O( ^ D$ e [
7-1 开始
9 @/ ^# M8 l! y e( E& l4 C6 I 7-2 nodejs文件操作7 w4 n$ s2 G, b, c! @4 U& ]3 Y( F
7-3 stream 介绍
& G# M0 ?( X- I" W9 t9 @ 7-4 stream演示(1)
0 D I1 @' o' J* v% a 7-5 stream演示(2)% N9 g6 Y" q! f1 L* s7 L0 F
7-6 写日志0 b$ p; N- z9 o* h5 H- l0 C
7-7 拆分日志8 e$ J- \3 O k
7-8 分析日志介绍( P6 m B& O0 w1 @4 k, ^2 S( E
7-9 -readline演示( K# ~2 ^/ N0 c# ~- t$ v3 a* Z7 X
7-10 总结8 P, C" ?7 E; e( _2 H( { j
) I6 k k( t# B; o2 v, d
第8章 博客项目之安全
% F- R1 G# v; A! Q安全是 server 端需要考虑的重点内容,本章主要讲解 nodejs 如何防范 sql 注入,xss 攻击,以及数据库的密码加密 —— 以防被黑客获取明文密码。# E% Q7 R B; u/ Y6 A* p, l
8-1 开始和sql注入
) H" z b, b9 N( _( {: ]0 i% J- Z 8-2 xss攻击
( S. z. R, V% o0 S4 v+ V: T- b 8-3 密码加密和总结
2 h5 d! z% o! m7 u; d0 | 8-4 统一总结6 V; j }: n2 F I9 I
! ]" ] N4 Q$ Y4 {( v第9章 使用 express 重构博客项目
; L& p& \3 g: U( `1 j, }# O) l8 M1 R先前的课程内容都是通过原生 nodejs 实现,是为了让同学们了解原理和底层实现,但实际开发还是会使用框架和工具来提高效率。本章使用 express 重构这个博客项目,学习使用框架和中间件机制。另外,本章将使用常用的插件来实现登录、日志等比较繁琐的功能,提高开发效率。最后,还详细讲解了 express 中间件的实现原理...
+ B' w) w' }% j7 v 9-1 开始8 u$ S9 }9 K- X' `
9-2 express 安装' Q7 S: x& C6 Y- T5 i" t& t" D
9-3 介绍express的入口代码
. ~2 P6 I O, F 9-4 演示express如何处理路由, B4 M W7 J, s3 E) Y6 X
9-5 express中间件
) p/ z% C! T, M& x/ {4 f 9-6 express介绍的总结
) Y( ?& S, k6 G 9-7 express开发博客项目-初始化环境
1 V+ M2 W/ x. j$ t 9-8 express处理session/ C9 |! [5 h* f6 k: l! t
9-9 session连接redis
, E+ | j1 i) W' r1 X/ u 9-10 登录中间件
6 V2 G& _% S; ?+ v1 Z8 e( S 9-11 开发路由
2 l% A2 j# m- j! K% ]5 H; a L 9-12 介绍morgan/ k+ ?4 ^5 G& j& q2 e- s
9-13 使用morgan写日志
+ I% g4 f* @2 d* ]; x 9-14 中间件原理介绍: Q) z* h' o' t- X
9-15 中间件原理-代码实现
# Q; c; s% m3 ? 9-16 -总结0 [& O# Z/ I) g
- E1 P2 T9 R3 r" p3 [! C4 D* B
第10章 使用 Koa2 重构博客项目
4 d, j" _5 w. ?( V4 U( Q! A0 B目前 koa2 和 express 是企业同时使用的 nodejs 框架,因此本章使用 koa2 再次重构这个博客项目。重构过程中将详细学习 koa2 框架的使用,koa2 的中间件机制,以及 async/await 语法。同理,本行也使用常用框架来实现登录、日志等比较繁琐的功能,提高开发效率。最后,还详细讲解了 koa2 中间件的实现原理,.../ I4 N) b7 R( l( t0 D+ T
10-1 开始
; x* n& g& `- e) ^* x o# X' j* w* M% D6 f0 i 10-2 介绍koa20 v2 K' a4 |7 { T% ?4 a
10-3 介绍路由
, a& Q& Z$ D; t+ U 10-4 介绍中间件机制
. H) A1 e4 Y5 e% s/ O* N- M* W, h 10-5 实现session( h6 @ K( A; ?
10-6 开发路由-准备工作
: l( s" @: R r. T5 k 10-7 开发路由-代码演示* V. L+ h4 K3 ~0 ^. s, F7 D
10-8 开发路由-(联调)
2 y1 T5 G( ~; \ 10-9 日志
* j6 R9 z9 U$ O) w+ p! H2 u. T 10-10 中间件原理-分析
4 C& z1 V: K/ I9 S2 W6 w 10-11 中间件原理-代码演示
" G$ z7 _8 f* j9 N7 e 10-12 总结
/ ]' E/ f |9 I# K0 ~% G* Y" W- T7 O9 Z/ O7 Y+ c
第11章 上线与配置
/ D+ K2 T' V, v3 V3 G4 f代码开发完毕要线上运行,并且保证服务稳定性,将使用 PM2 工具。本章讲解 PM2 的配置使用和进程守护,以及 PM2 多进程模型。最后,还介绍了服务器运维的相关方法。, U5 [( R8 M( ?! }
11-1 开始和 PM2 介绍
1 e. a- c% @9 R: }7 `. V4 o 11-2 常用命令
9 a. m" B D& q# b$ B6 J 11-3 进程守护
+ H. l" v# _' L6 P! ` 11-4 常用配置
$ j2 B( e# b! _ H- x8 H 11-5 多进程
. u& ]9 a: ^/ b5 Y 11-6 总结, i0 D# R" N: v% R
% w# H$ e* t1 y* h7 Y第12章 课程总结
% g& l+ d6 S0 N- R9 D: M对课程做总结,并列出了课程所提到的主要知识点,整体回顾课程。
& J- ?* ]8 S) V7 D0 q( J- Q2 m# s 12-1 课程总结7 {* T u' c5 z+ D8 S. Y1 ?
9 ]( U7 P: ^, a! x# u |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|