本文共 2224 字,大约阅读时间需要 7 分钟。
Express 是一个高效的 Node.js Web 框架,广泛应用于构建 Web 服务。以下是 Express 的核心功能和常用配置方法的详细说明。
var express = require('express');var app = express(); app.get('/', function(req, res) { res.send('hello world');}); app.listen(3000);
Express 提供多种路由方法,如 app.get(), app.post(), app.all() 等。
app.get('/user/:id', function(req, res) { res.send('用户 ID: ' + req.params.id);}); 使用 :id 定义路由参数,参数值可以在 req.params 中访问。
app.get('/search/:query', function(req, res) { var query = req.params.query; res.send('搜索关键词: ' + query);}); app.all('*') 可以定义所有请求的全局路由。
app.all('*', function(req, res, next) { console.log('所有请求都会经过这里'); next();}); req.params // 路由参数对象,例如 { id: '123' } req.query // 解析过的查询参数对象
通过 bodyParser 中间件,可以访问请求体数据。
req.body // 请求体对象
req.files // 上传的文件对象
res.set('Content-Type', 'text/plain'); res.send('hello world'); // 发送字符串响应res.send(404, '页面不存在'); // 发送错误响应 res.json({ message: '欢迎来到 Express' }); res.jsonp('callback', { message: '欢迎来到 Express' }); app.use(express.bodyParser());
app.use(express.static('public')); app.use(express.multipart());
app.use(express.compress());
app.use(express.csrf());
app.locals.title = 'My App';
本地变量可以在视图模板中使用。
app.use('views', path.join(__dirname, 'views')); app.engine('jade', require('jade').__express); res.render('index', { title: 'My App' }); 可以将路由组织在组中,方便管理。
var userRouter = express.Router();userRouter.get('/profile', function(req, res) { res.send('用户个人资料');});app.use('/user', userRouter); 可以在组中定义路由参数。
var userRouter = express.Router();userRouter.get('/:username', function(req, res) { res.send('欢迎来到用户页面: ' + req.params.username);});app.use('/user', userRouter); npm install express
app.use((err, req, res, next) => { if (err.status === 404) { res.send('页面不存在'); } next(err);}); app.use((err, req, res, next) => { console.error('服务器错误:', err); res.status(500).send('服务器内部错误'); next();}); 通过以上配置,可以快速搭建一个 Express 应用程序,并通过路由和中间件灵活处理请求。
转载地址:http://aigbz.baihongyu.com/