Express框架——安装篇

什么是Express框架

Express框架是目前比较流行的基于Node.js的Web开发框架,可以快速地搭建一个完整功能的网站。

安装Express框架

  • 安装第一步:创建文件夹,可以通过右键直接创建,也可以通过 cmd 创建。在这里插入图片描述
  • 安装第二步:通过 cmd 进入刚刚创建的文件夹,可以通过在该文件夹下直接 右键+PowerShell
  • 安装第三步:通过命令行代码npm init添加配置文件,该命令将要求你输入几个参数,例如此应用的名称和版本等。可以直接按“回车”键选择大部分默认设置, 但设置entry point: (index.js)时,可以进行修改,这个用于设置应用的入口文件,默认为index.js
  • 安装第四步:安装Express,安装Express 有两种情况,一种临时安装,一种是保存到依赖列表
//临时安装
npm install express --no-save

//保存到依赖列表
npm install express --save

在完成上述操作之后,我们在文件夹下新建一个 index.js,且写入以下内容:

//引入express模块
const express = require('express');
//创建express实例
const app = express();
//定义端口号
const port = 3000;
//添加路由
app.get('/', (req, res) => res.send('Hello World!'));
//绑定端口号
app.listen(port, () => console.log(`Example app listening on port ${port}!`));

然后在命令行窗口执行node index命令,这样一个简单的 Express 应用就创建成功了。

Express 应用程序生成器

上面我们介绍了简单的创建一个Express 应用,过程也已经罗列清楚了。除了上述方法,我们还可以通过 Express 应用程序生成器快速创建一个Express应用框架,具体的方法如下:

  • 第一步:通过 npx命令来运行 Express 应用程序生成器
$ npx express-generator

对于较老的 Node 版本,可以通过 npm 将 Express 应用程序生成器安装到全局环境中并执行:

$ npm install -g express-generator
$ express
  • 第二步:在安装完 Express 之后,通过npm install命令安装所有的依赖包。
  • 第三步:通过npm start启动项目,项目的默认端口是 3000 ,可以通过app.listen()进行修改。

在安装完成之后,我们来了解一下具体的目录结构:

  .
├── app.js
├── bin
│   └── www
├── package.json
├── public
│   ├── images
│   ├── javascripts
│   └── stylesheets
│       └── style.css
├── routes
│   ├── index.js
│   └── users.js
└── views
    ├── error.pug
    ├── index.pug
    └── layout.pug
  • app.js 文件:这个是程序的入库文件
  • package.json 文件:文件是配置文件
  • public 文件夹:用于存放资源文件(图片、css、js等)
  • routes 文件夹:用于存放文件,通过路由器创建的路由。(见路由器详情
  • views 文件夹:用于存放视图文件

那么我们具体来看一下,app.js 文件的内容:

//引入HTTP错误请求模块
var createError = require('http-errors');

//引入express模块
var express = require('express');

//引入原生模块path模块
var path = require('path');

//引入express的cookie处理的中间键(middleware)模块
var cookieParser = require('cookie-parser');

//引入日志中间键模块
var logger = require('morgan');

//引用首页的路由
var indexRouter = require('./routes/index');

//引用users的路由
var usersRouter = require('./routes/users');

//创建express实例
var app = express();

// 设置view渲染引擎为ejs
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

//app.use是express实例上的方法,表示应用中间键
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);

//捕获 捕获404并转发到错误处理程序
//当请求错误,且状态码为404时,进入下一个程序,而下一个是错误处理程序
app.use(function(req, res, next) {
    next(createError(404));
});

// 错误处理程序
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');
});
//设置程序端口号
app.listen(6555, () => console.log(`Example app listening on port 6555!`))
module.exports = app;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值