nodejs入门教程六:express模块用法示例
更新时间:2017年04月24日 11:50:07 作者:Dason_yu
这篇文章主要介绍了nodejs入门教程之express模块用法,结合实例形式分析了express模块的功能、创建、路由相关使用技巧,需要的朋友可以参考下
本文实例讲述了nodejs入门教程之express模块用法。分享给大家供大家参考,具体如下:
/**
* Created by Dason on 2017/3/28.
*/
var express = require('express');
var morgan = require('morgan');//打印日志的中间件
//创建express 的实例
var app = express();
/**
* 中间件:
* Connect: Node.js的中间件框架
* 分层处理:每层实现一个功能
* 使用 use方法:向use方法传入具体的中间件
*/
//Express 提供了内置的中间件 express.static 来设置静态文件:express.static('静态文件的目录')
//http://localhost:3001/test.txt: public的相对路径
app.use(express.static('./public'));//当前项目目录下的文件
app.use(morgan());
// 当请求过来时,express通过路由来控制做出响应
//1. 路由的path 方法
app.get('/',function(req,res){
res.end('');
});
/**
* 路由
* 路由:根据不同的请求,分配相应的函数
* 区分:路径、请求方法
* 三种路由方法
* path
* router
* route
*/
//2.router 方法: 针对同一个路由下的多个子路由
// 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的配置中
//第一个参数:基础路径(即请求前的路径),第二个参数:定义的路由
app.use('/post',Router);
//3. 路由的route 方法:针对同一个路由下的不同请求方法
//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');
});
/**
* 路由参数:例如 http://example.com/news/123
* 123 就是路由参数
* 第一个参数:指定路由参数名字
* 第二个参数:function:
* @parms:next:执行下一步操作;newsId:路由参数的值
*/
//http://localhost:3001/news/123
app.param('newsId',function(req,res,next,newsId){
req.newsId = newsId;//将值存储到请求对象中
next();
});
//使用该路由参数
app.get('/news/:newsId',function(req,res){
res.end('newsId:' + req.newsId);
});
//监听一个端口
app.listen(3001,function(){
console.log('express running on http://localhost:3001');
})
public在项目目录下:

希望本文所述对大家nodejs程序设计有所帮助。
相关文章
Node 文件查找优先级及 Require 方法文件查找策略
这篇文章主要介绍了Node文件查找优先级及Require方法文件查找策略。文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下2022-09-09
通过node-mysql搭建Windows+Node.js+MySQL环境的教程
这篇文章主要介绍了通过node-mysql搭建Windows+Node.js+MySQL环境的教程,node-mysql是JavaScript编写的一个Node的MySQL驱动,需要的朋友可以参考下2016-03-03


最新评论