標籤:style blog http color 使用 strong 檔案 資料
這裡,準備從零開始用nodejs實現一個微博系統。功能包括路由控制、頁面模板、資料庫訪問、使用者註冊、登入、使用者會話等內容。
將會介紹Express架構、MVC設計模式、ejs模板引擎以及MongoDB資料庫的操作。
準備工作
使用http模組,Express架構,
nodejs的抽象如此之差,把不該有的細節暴露給開發人員。你可以用它做任何HTTP伺服器能做的事情,不僅僅是做一個網站,甚至實現一個HTTPProxy 伺服器都行。
Express是WEB開發架構。
實現:
為HTTP模組提供了更高層的介面,
路由控制,
模板解析支援,
動態視圖,
使用者會話,
CSRF保護,
靜態檔案服務,
錯誤控制器,
訪問日誌,
緩衝,
外掛程式支援。
多數功能只是對HTTP協議中常用操作的封裝,更多的功能需要外掛程式或者整合其他模組來完成。
快速開發
安裝Express
在項目目錄下
npm install -g express-generator
express --help
建立工程
express -t ejs microblog 由於新版本沒有-t命令
1.如何在項目中安裝ejs模板引擎
在NodeJS指南中利用利用以下命令建立網站的基本結構:
express -t ejs microblog
運行這個命令後繼續運行
cd microblog && npm install(安裝項目的相依性屬性),
發現安裝的模板引擎是jade,而不是ejs。原因是現在的版本已經沒有-t這個命令了,改為
express -e microblog
運行完這個命令,繼續運行cd microblog && npm install,ejs模板引擎就安裝好了
但是express3以上的版本把layout預設給取消了,所以現在在views檔案夾下並沒有產生layout.ejs。
2.安裝了ejs後,如何使用ejs的layout模板
安裝express-partials
在cmd中切換到項目目錄,運行
(1)npm install express-partials或者
(2)在 package.json 裡面的 dependencies 添加 "express-partials": "*"。然後在項目目錄下運行 npm install 。
(3)然後在app.js 裡面引用 express-partials,引用方法:
1.在path = require(‘path‘)後,添加引用 var partials = require(‘express-partials‘);
2.在 app.set(‘view engine‘, ‘ejs‘)後,添加 app.use(partials());
3.增長連接埠,
app.listen(8100,function(){
console.log("Server Start!");
});
http://cnodejs.org/topic/515b009a6d38277306192e4e
啟動伺服器
工程的結構
路由控制
模板引擎
建立微博網站
使用者註冊和登入
發表微博