第1章 課程介紹
包括課程概述、核心模塊、核心技術、課程安排、課程收獲、講授方式、學習前提等方面的介紹,讓同學們對課程項目有一個直觀的了解。
第2章 nodejs 介紹
本章主要為了照顧尚未入門或者剛剛入門 nodejs 的同學,介紹 nodejs 的下載、安裝和基本使用,以及 nodejs 和前端 javascript 的區別。另外,重點介紹了服務端開發和前端開發思路上的區別,為后續的開發做一個基礎的鋪墊。
第3章 項目介紹
課程是通過案例的形式來學習 nodejs ,本章先來介紹這個案例,即個人博客項目。包括需求分析、原型圖設計、以及 server 端的技術方案設計。有了詳細的設計方案,才能指導后續的實際開發。
第4章 開發博客項目之接口
要開發一個博客項目的 server 端,首先要實現技術方案設計中的各個 API 。本章主要講解如何使用原生 nodejs 處理的 http 請求,包括路由分析和數據返回,然后代碼演示各個 API 的開發 。但是本章尚未連接數據庫,因此 API 返回的都是假數據。...
第5章 開發博客項目之數據存儲
API 實現了,就需要連接數據庫,實現真正的數據存儲和查詢,不再使用假數據。本章主要講解 mysql 的安裝、使用,以及用 nodejs 連接 mysql ,最后將 mysql 應用到各個已經開發完的 API 中。
第6章 博客項目之登錄
用戶登錄是博客項目的主要功能之一,本章主要講解如何使用原生 nodejs 實現登錄。包括 cookie session 的介紹和使用,以及為了擴展性和性能使用 redis 來存儲 session 。最后,通過 nginx 配置聯調環境,和前端頁面聯調。本章內容較多,對於前端開發人員來說,新概念也較多,是本課程學習上的挑戰。...
第7章 博客項目之日志
日志記錄和日志分析是 server 端的重要模塊,前端涉及較少。本章主要講解如何使用原生 nodejs 實現日志記錄、日志內容分析和日志文件拆分。其中包括 stream readline 和 crontab 等核心知識點。
第8章 博客項目之安全
安全是 server 端需要考慮的重點內容,本章主要講解 nodejs 如何防范 sql 注入,xss 攻擊,以及數據庫的密碼加密 —— 以防被黑客獲取明文密碼。
第9章 使用 express 重構博客項目
先前的課程內容都是通過原生 nodejs 實現,是為了讓同學們了解原理和底層實現,但實際開發還是會使用框架和工具來提高效率。本章使用 express 重構這個博客項目,學習使用框架和中間件機制。另外,本章將使用常用的插件來實現登錄、日志等比較繁瑣的功能,提高開發效率。最后,還詳細講解了 express 中間件的實現原理...
第10章 使用 Koa2 重構博客項目
目前 koa2 和 express 是企業同時使用的 nodejs 框架,因此本章使用 koa2 再次重構這個博客項目。重構過程中將詳細學習 koa2 框架的使用,koa2 的中間件機制,以及 async/await 語法。同理,本行也使用常用框架來實現登錄、日志等比較繁瑣的功能,提高開發效率。最后,還詳細講解了 koa2 中間件的實現原理,...
第11章 上線與配置
代碼開發完畢要線上運行,並且保證服務穩定性,將使用 PM2 工具。本章講解 PM2 的配置使用和進程守護,以及 PM2 多進程模型。最后,還介紹了服務器運維的相關方法。
第12章 課程總結
對課程做總結,並列出了課程所提到的主要知識點,整體回顧課程。