nodejs入門教程六:express模塊用法示例
本文實(shí)例講述了nodejs入門教程之express模塊用法。分享給大家供大家參考,具體如下:
/** * Created by Dason on 2017/3/28. */ var express = require('express'); var morgan = require('morgan');//打印日志的中間件 //創(chuàng)建express 的實(shí)例 var app = express(); /** * 中間件: * Connect: Node.js的中間件框架 * 分層處理:每層實(shí)現(xiàn)一個(gè)功能 * 使用 use方法:向use方法傳入具體的中間件 */ //Express 提供了內(nèi)置的中間件 express.static 來設(shè)置靜態(tài)文件:express.static('靜態(tài)文件的目錄') //http://localhost:3001/test.txt: public的相對(duì)路徑 app.use(express.static('./public'));//當(dāng)前項(xiàng)目目錄下的文件 app.use(morgan()); // 當(dāng)請(qǐng)求過來時(shí),express通過路由來控制做出響應(yīng) //1. 路由的path 方法 app.get('/',function(req,res){ res.end(''); }); /** * 路由 * 路由:根據(jù)不同的請(qǐng)求,分配相應(yīng)的函數(shù) * 區(qū)分:路徑、請(qǐng)求方法 * 三種路由方法 * path * router * route */ //2.router 方法: 針對(duì)同一個(gè)路由下的多個(gè)子路由 // http://localhost:3001/post/add var Router = express.Router(); // http://localhost:3001/post/add Router.get('/add',function(req,res){ res.end('Router /add'); }); // http://localhost:3001/post/add Router.get('/list',function(req,res){ res.end('Router /list'); }); //將定義的路由加入到 app的配置中 //第一個(gè)參數(shù):基礎(chǔ)路徑(即請(qǐng)求前的路徑),第二個(gè)參數(shù):定義的路由 app.use('/post',Router); //3. 路由的route 方法:針對(duì)同一個(gè)路由下的不同請(qǐng)求方法 //http://localhost:3001/article app.route('/article') .get(function(req,res){ res.end('route /article get'); }) .post(function(req,res){ res.end('route /article post'); }); /** * 路由參數(shù):例如 http://example.com/news/123 * 123 就是路由參數(shù) * 第一個(gè)參數(shù):指定路由參數(shù)名字 * 第二個(gè)參數(shù):function: * @parms:next:執(zhí)行下一步操作;newsId:路由參數(shù)的值 */ //http://localhost:3001/news/123 app.param('newsId',function(req,res,next,newsId){ req.newsId = newsId;//將值存儲(chǔ)到請(qǐng)求對(duì)象中 next(); }); //使用該路由參數(shù) app.get('/news/:newsId',function(req,res){ res.end('newsId:' + req.newsId); }); //監(jiān)聽一個(gè)端口 app.listen(3001,function(){ console.log('express running on http://localhost:3001'); })
public在項(xiàng)目目錄下:
希望本文所述對(duì)大家nodejs程序設(shè)計(jì)有所幫助。
相關(guān)文章
在Node.js中實(shí)現(xiàn)視頻列表的分頁展示功能
在Web應(yīng)用開發(fā)中,展示大量數(shù)據(jù)時(shí)經(jīng)常會(huì)用到分頁功能,以提升用戶體驗(yàn)和頁面加載性能,本篇博客將介紹如何在使用Node.js和MongoDB的項(xiàng)目中實(shí)現(xiàn)視頻列表的分頁展示,文中有相關(guān)的代碼示例,需要的朋友可以參考下2024-04-04Node.js數(shù)據(jù)流Stream之Readable流和Writable流用法
這篇文章介紹了Node.js數(shù)據(jù)流Stream之Readable流和Writable流的用法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07Node.js查找當(dāng)前目錄下文件夾實(shí)例代碼
本篇文章主要介紹了Node.js查找當(dāng)前目錄下文件夾實(shí)例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-03-03淺析nodejs實(shí)現(xiàn)Websocket的數(shù)據(jù)接收與發(fā)送
WebSocket是HTML5開始提供的一種瀏覽器與服務(wù)器間進(jìn)行全雙工通訊的網(wǎng)絡(luò)技術(shù),本文給大家介紹nodejs實(shí)現(xiàn)websocket的數(shù)據(jù)庫接收與發(fā)送,小伙伴們一起學(xué)習(xí)吧2015-11-11Node.js設(shè)置CORS跨域請(qǐng)求中多域名白名單的方法
這篇文章主要介紹了Node.js設(shè)置CORS跨域請(qǐng)求中多域名白名單的方法,文中通過示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題
本篇文章主要介紹了nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題,具有一定的參考價(jià)值,有興趣的可以了解一下2017-07-07node.js將MongoDB數(shù)據(jù)同步到MySQL的步驟
這篇文章主要給大家介紹了關(guān)于node.js將MongoDB數(shù)據(jù)同步到MySQL的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12