博客
关于我
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 常见的 9 种优化方法
查看>>
MySQL 常见的开放性问题
查看>>
Mysql 常见错误
查看>>
mysql 常见问题
查看>>
MYSQL 幻读(Phantom Problem)不可重复读
查看>>
mysql 往字段后面加字符串
查看>>
mysql 快照读 幻读_innodb当前读 与 快照读 and rr级别是否真正避免了幻读
查看>>
MySQL 快速创建千万级测试数据
查看>>
mysql 快速自增假数据, 新增假数据,mysql自增假数据
查看>>
MySql 手动执行主从备份
查看>>
Mysql 批量修改四种方式效率对比(一)
查看>>
Mysql 报错 Field 'id' doesn't have a default value
查看>>
MySQL 报错:Duplicate entry 'xxx' for key 'UNIQ_XXXX'
查看>>
Mysql 拼接多个字段作为查询条件查询方法
查看>>
mysql 排序id_mysql如何按特定id排序
查看>>
Mysql 提示:Communication link failure
查看>>
mysql 插入是否成功_PDO mysql:如何知道插入是否成功
查看>>
Mysql 数据库InnoDB存储引擎中主要组件的刷新清理条件:脏页、RedoLog重做日志、Insert Buffer或ChangeBuffer、Undo Log
查看>>
mysql 数据库中 count(*),count(1),count(列名)区别和效率问题
查看>>
mysql 数据库备份及ibdata1的瘦身
查看>>