# 什么是express
```
(http://www.expressjs.com.cn/)官方文檔
```
雖然使用 Node.js 中的 http 模塊是可以開發 Web 應用的,處理靜態資源,處理動態資源,請求分發(路由)等等,也可以讓開發者對 HTTP 協議的理解更加清晰,但是使用起來比較復雜,開發效率低。作為 Web 應用開發者,我們不需要知道實現的細節,更不想與這些細節糾纏從而降低開發效率。
npm 提供了大量的第三方模包,其中不乏許多 Web 框架,我們沒有必要重復發明輪子,因而選擇使用 [Express](http://www.expressjs.com.cn/) 作為開發框架,因為它是目前最穩定、使用最廣泛,而且 Node.js 官方推薦的唯一一個 Web 開發框架。除了為 http 模塊提供了更高層的接口外,還實現了許多功能,其中包括:
* 靜態文件服務;
* 路由控制;
* 模板解析支持;
* 動態視圖;
* 用戶會話;
* CSRF 保護;
* 錯誤控制器;
* 訪問日志;
* 緩存;
* 插件支持。
# 為什么使用,它是什么
提高開發效率, 靜態資源服務, 路由分發和模塊化, 模板解析支持
Web 框架 是一個包
- NodeJs
- 01-萬維網
- 02-CS 架構 VS BS 架構
- 03-Web 服務器訪問流程
- 04-url
- 05-網絡傳輸協議
- 06-HTTP 協議
- 07-報文
- 08-命令行界面
- 09-什么是 Node.js
- 10-環境安裝及配置
- 11-JavaScript 代碼運行環境
- 12-全局對象
- 13-Buffer
- 14-模塊化
- 15-EventEmitter
- 16-path模塊
- 17-流式操作
- 18-包
- 19-模板技術
- 20-ejs入門
- 21-express
- 01-什么是express
- 02-Hellow Express
- 03-靜態資源服務
- 04-路由
- 05-模塊化路由處理程序
- 06-中間件
- 07-手動實現中間件
- 08-常用內置中間件和第三方中間件
- 09-響應
- 10-獲取請求參數
- 11-Express 中使用模板引擎
- 22-web存儲與安全
- 01-cookie
- 02-sessionStorage
- 03-localStorage
- 04-base64
- 05-https
- 06-同源策略