Express (expressjs.com)是Node.JS中一個簡潔、靈活、強大的Web應用框架,
它提供了一系列強大特性,可以幫助我們快速建立各種Web 應用,也可用來編寫各種的Web工具。
Express博大精深,本文在此只做簡單入門介紹。
且看例程:
var express = require('express');var app = express();//當訪問根目錄時觸發app.get('/', function (req, res) { res.send('Hello Jshaman.com');}) var server = app.listen(8000, function () { var host = server.address().address var port = server.address().port console.log(host, port);})
執行效果:
它的request、response對像非常細緻、有用,在express程式設計中會常用到。
Request 物件
request 物件表示 HTTP 請求,包含了請求查詢字串,引數,內容,HTTP 頭部等屬性。常見屬性如下:
req.app:當callback為外部檔案時,用req.app訪問express的例項req.baseUrl:獲取路由當前安裝的URL路徑req.body / req.cookies:獲得「請求主體」/ Cookiesreq.fresh / req.stale:判斷請求是否還「新鮮」req.hostname / req.ip:獲取主機名和IP地址req.originalUrl:獲取原始請求URLreq.params:獲取路由的parametersreq.path:獲取請求路徑req.protocol:獲取協議型別req.query:獲取URL的查詢引數串req.route:獲取當前匹配的路由req.subdomains:獲取子域名req.accepts():檢查可接受的請求的文件型別req.acceptsCharsets / req.acceptsEncodings / req.acceptsLanguages:返回指定字符集的第一個可接受字元編碼req.get():獲取指定的HTTP請求頭req.is():判斷請求頭Content-Type的MIME型別Response 物件
response 物件表示 HTTP 響應,即在接收到請求時向客戶端傳送的 HTTP 響應資料。常見屬性有:
res.app:同req.app一樣res.append():追加指定HTTP頭res.set()在res.append()後將重置之前設定的頭res.cookie(name,value [,option]):設定Cookieopition: domain / expires / httpOnly / maxAge / path / secure / signedres.clearCookie():清除Cookieres.download():傳送指定路徑的檔案res.get():返回指定的HTTP頭res.json():傳送JSON響應res.jsonp():傳送JSONP響應res.location():只設置響應的Location HTTP頭,不設定狀態碼或者close responseres.redirect():設定響應的Location HTTP頭,並且設定狀態碼302res.render(view,[locals],callback):渲染一個view,同時向callback傳遞渲染後的字串,如果在渲染過程中有錯誤發生next(err)將會被自動呼叫。callback將會被傳入一個可能發生的錯誤以及渲染後的頁面,這樣就不會自動輸出了。res.send():傳送HTTP響應res.sendFile(path [,options] [,fn]):傳送指定路徑的檔案 -會自動根據檔案extension設定Content-Typeres.set():設定HTTP頭,傳入object可以一次設定多個頭res.status():設定HTTP狀態碼res.type():設定Content-Type的MIME型別在本系列教程接下來的文章中,還會多次出現對express的應用,屆時將會深入了解它的各種功能。
更多本系列教程:
最新評論