nodejs入门教程六:express模块用法示例


Posted in NodeJs onApril 24, 2017

本文实例讲述了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入门教程六:express模块用法示例

希望本文所述对大家nodejs程序设计有所帮助。

NodeJs 相关文章推荐
nodejs获取本机内网和外网ip地址的实现代码
Jun 01 NodeJs
nodejs命令行参数处理模块commander使用实例
Sep 17 NodeJs
nodejs中实现路由功能
Dec 29 NodeJs
NodeJS实现阿里大鱼短信通知发送
Jan 17 NodeJs
Nodejs中 npm常用命令详解
Jul 04 NodeJs
详解nodejs中exports和module.exports的区别
Feb 17 NodeJs
NodeJs使用Mysql模块实现事务处理实例
May 31 NodeJs
详解Nodejs 通过 fs.createWriteStream 保存文件
Oct 10 NodeJs
Nodejs 发布自己的npm包并制作成命令行工具的实例讲解
May 15 NodeJs
nodejs之koa2请求示例(GET,POST)
Aug 07 NodeJs
NodeJs 实现简单WebSocket即时通讯的示例代码
Aug 05 NodeJs
NodeJs使用webpack打包项目的方法详解
Feb 28 NodeJs
Nodejs进阶:express+session实现简易登录身份认证
Apr 24 #NodeJs
nodejs入门教程五:连接数据库的方法分析
Apr 24 #NodeJs
nodejs入门教程四:URL相关模块用法分析
Apr 24 #NodeJs
nodejs入门教程三:调用内部和外部方法示例
Apr 24 #NodeJs
nodejs入门教程二:创建一个简单应用示例
Apr 24 #NodeJs
nodejs入门教程一:概念与用法简介
Apr 24 #NodeJs
nodejs 终端打印进度条实例代码
Apr 22 #NodeJs
You might like
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
PHP下对数组进行排序的函数
2010/08/08 PHP
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
PHP类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
PHP实现简易用户登录系统
2020/07/10 PHP
jquery nth-child()选择器的简单应用
2010/07/10 Javascript
jquery创建一个ajax关键词数据搜索实现思路
2013/02/26 Javascript
Javascript 浮点运算的问题分析与解决方法
2013/08/27 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
新手快速学习JavaScript免费教程资源汇总
2015/06/25 Javascript
js实现微信分享代码
2020/10/11 Javascript
理解Javascript的call、apply
2015/12/16 Javascript
前端程序员必须知道的高性能Javascript知识
2016/08/24 Javascript
TypeScript学习之强制类型的转换
2016/12/27 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
JS实现页面打印(整体、局部)
2017/08/18 Javascript
js字符限制(字符截取) 一个中文汉字算两个字符
2017/09/12 Javascript
Js中async/await的执行顺序详解
2017/09/22 Javascript
vue如何通过id从列表页跳转到对应的详情页
2018/05/01 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
微信公众号平台接口开发 获取access_token过程解析
2019/08/14 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
python获得文件创建时间和修改时间的方法
2015/06/30 Python
对Python 检查文件名是否规范的实例详解
2019/06/10 Python
python主线程与子线程的结束顺序实例解析
2019/12/17 Python
python实现用类读取文件数据并计算矩形面积
2020/01/18 Python
Python pip配置国内源的方法
2020/02/14 Python
pyqt5 textEdit、lineEdit操作的示例代码
2020/08/12 Python
服装发布会策划方案
2014/05/22 职场文书
支行行长竞聘报告
2014/11/06 职场文书
小学教师教学反思
2016/02/24 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python
mysql中DCL常用的用户和权限控制
2022/03/31 MySQL
python中的random模块和相关函数详解
2022/04/22 Python