博客
关于我
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/

你可能感兴趣的文章
Nginx中使用expires指令实现配置浏览器缓存
查看>>
nginx中配置root和alias的区别
查看>>
nginx主要流程(未完成)
查看>>
Nginx之二:nginx.conf简单配置(参数详解)
查看>>
Nginx从入门到精通
查看>>
Nginx代理websocket配置(解决websocket异常断开连接tcp连接不断问题)
查看>>
Nginx代理初探
查看>>
nginx代理地图服务--离线部署地图服务(地图数据篇.4)
查看>>
Nginx代理外网映射
查看>>
Nginx代理模式下 log-format 获取客户端真实IP
查看>>
Nginx代理解决跨域问题(导致图片只能预览不能下载)
查看>>
Nginx代理访问提示ERR_CONTENT_LENGTH_MISMATCH
查看>>
Nginx代理配置详解
查看>>
Nginx代理静态资源(gis瓦片图片)实现非固定ip的url适配网络环境映射ip下的资源请求解决方案
查看>>
Nginx代理静态资源(gis瓦片图片)实现非固定ip的url适配网络环境映射ip下的资源请求解决方案
查看>>
nginx优化日志拒绝特定404请求写入
查看>>
Nginx使用proxy_cache指令设置反向代理缓存静态资源
查看>>
Nginx做反向代理时访问端口被自动去除
查看>>
Nginx入门教程-简介、安装、反向代理、负载均衡、动静分离使用实例
查看>>
nginx反向代理
查看>>