Express.js简单入门
Express.js简单入门介绍Web应用API性能如何创建一个项目express的编程模型express的中间件路由错误处理代码示例介绍Web应用Express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用API丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单性能Express 不对 node.
·
Express.js简单入门
介绍
Web应用
Express 是一个简洁而灵活的 node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用
API
丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单
性能
Express 不对 node.js 已有的特性进行二次抽象,我们只是在它之上扩展了Web应用所需的功能
如何创建一个项目
- 创建目录
- yarn init -y; git init;
- 添加.gitignore文件
- 提交到git,推送至GitHub
- 安装express:yarn add express
- 创建app.js,按照官方文档抄代码,学习
- 安装express-generator(脚手架):yarn global add express-generator
express的编程模型
express的中间件
路由
app.use('/xxx',fn);
app.get('/xxx',fn);
app.post('/xxx',fn);
app.route('/xxx').all(f1).get(f2).post(f3);
错误处理
1.next(error)
2.可自定义errorHandler
代码示例
import {ErrorRequestHandler, RequestHandler} from 'express';
const createError = require('http-errors');
const express = require('express');
const path = require('path');
const cookieParser = require('cookie-parser');
const logger = require('morgan');
const indexRouter = require('./routes');
const usersRouter = require('./routes/users');
const app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/users', usersRouter);
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
} as RequestHandler);
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
next();
} as ErrorRequestHandler);
module.exports = app;
更多推荐
已为社区贡献3条内容
所有评论(0)