Express介绍
Fast, unopinionated, minimalist web framework for Node.js.
基于 Node.js平台,快速、开放、极简的 web 开发框架。
入门
HelloWorld
mkdir express-demo
cd express-demo
cnpm init -y
cnpm install express --save
touch app.js
var express = require('express')
var app = express()
app.get('/', function (req, res) {
res.send('Hello World')
})
app.listen(3000)
程序将在3000端口跑起HelloWorld。
脚手架
下载cli工具
cnpm install express-generator -g
创建应用
express express-demo
cd express-demo
cnpm install
cnpm run start
程序将在3000端口启动并显示Welcome to Express。
路由
- get方法
app.get('/',function(req,res){
res.send('hello world');
})
- post方法
app.post('/',function(req,res){
res.send('hello world')
})
- RESTful请求
app.get('/users/:id',function(req,res){
console.log(req.params.id)
})
express.Router
用来实现模块化
user.js
var express = require('express')
var router = express.Router()
// 中间件,所有请求先经过该函数处理,调用next()进入下一个处理函数
router.use(function(req,res,next){
next()
})
router.get('/:id',function(req,res){
res.send(res.params.id)
})
module.exports = router
在app.js中
var userRouter = require('./user.js')
app.use('/users',userRouter)
静态资源访问
app.use(express.static('public'))