博客
关于我
Express -api参考
阅读量:473 次
发布时间:2019-03-06

本文共 2224 字,大约阅读时间需要 7 分钟。

Express框架入门指南

Express 是一个高效的 Node.js Web 框架,广泛应用于构建 Web 服务。以下是 Express 的核心功能和常用配置方法的详细说明。


应用程序设置

1. 创建 Express 应用程序

var express = require('express');
var app = express();

2. 定义路由和处理逻辑

app.get('/', function(req, res) {
res.send('hello world');
});

3. 启动服务器

app.listen(3000);

路由配置

1. 路由方法

Express 提供多种路由方法,如 app.get(), app.post(), app.all() 等。

app.get('/user/:id', function(req, res) {
res.send('用户 ID: ' + req.params.id);
});

2. 路由参数

使用 :id 定义路由参数,参数值可以在 req.params 中访问。

app.get('/search/:query', function(req, res) {
var query = req.params.query;
res.send('搜索关键词: ' + query);
});

3. 全局路由

app.all('*') 可以定义所有请求的全局路由。

app.all('*', function(req, res, next) {
console.log('所有请求都会经过这里');
next();
});

请求对象

1. 请求参数

req.params // 路由参数对象,例如 { id: '123' }

2. 请求查询

req.query // 解析过的查询参数对象

3. 请求体

通过 bodyParser 中间件,可以访问请求体数据。

req.body // 请求体对象

4. 文件上传

req.files // 上传的文件对象

响应对象

1. 设置响应头

res.set('Content-Type', 'text/plain');

2. 发送响应

res.send('hello world'); // 发送字符串响应
res.send(404, '页面不存在'); // 发送错误响应

3. JSON 响应

res.json({ message: '欢迎来到 Express' });

4. JSONP 支持

res.jsonp('callback', { message: '欢迎来到 Express' });

中间件

1. 请求体解析

app.use(express.bodyParser());

2. 文件服务

app.use(express.static('public'));

3. 文件上传

app.use(express.multipart());

4. 压缩响应

app.use(express.compress());

5. CSRF 防护

app.use(express.csrf());

应用本地变量

1. 设置本地变量

app.locals.title = 'My App';

2. 模板变量

本地变量可以在视图模板中使用。

app.use('views', path.join(__dirname, 'views'));

模板引擎

1. 注册模板引擎

app.engine('jade', require('jade').__express);

2. 使用模板

res.render('index', { title: 'My App' });

路由分组

1. 路由分组

可以将路由组织在组中,方便管理。

var userRouter = express.Router();
userRouter.get('/profile', function(req, res) {
res.send('用户个人资料');
});
app.use('/user', userRouter);

2. 路由参数

可以在组中定义路由参数。

var userRouter = express.Router();
userRouter.get('/:username', function(req, res) {
res.send('欢迎来到用户页面: ' + req.params.username);
});
app.use('/user', userRouter);

安装依赖

npm install express

常用错误处理

1. 404 错误

app.use((err, req, res, next) => {
if (err.status === 404) {
res.send('页面不存在');
}
next(err);
});

2. 全局错误处理

app.use((err, req, res, next) => {
console.error('服务器错误:', err);
res.status(500).send('服务器内部错误');
next();
});

通过以上配置,可以快速搭建一个 Express 应用程序,并通过路由和中间件灵活处理请求。

转载地址:http://aigbz.baihongyu.com/

你可能感兴趣的文章
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>
MySQL中auto_increment有什么作用?(IT枫斗者)
查看>>
MySQL中B+Tree索引原理
查看>>
mysql中cast() 和convert()的用法讲解
查看>>
mysql中datetime与timestamp类型有什么区别
查看>>
MySQL中DQL语言的执行顺序
查看>>
mysql中floor函数的作用是什么?
查看>>
MySQL中group by 与 order by 一起使用排序问题
查看>>