Node.js+Webpack开发实战
上QQ阅读APP看书,第一时间看更新

4.2 快速开始

本节将学习如何基于Express框架来开发一个HTTP服务器。

4.2.1 初始化项目

新建应用目录,然后进入该目录并将其作为工作目录:

mkdir express-example
cd express-example

通过npm创建一个package.json文件:

npm init

此命令将要求你输出几个参数,例如应用的名称和版本。在本节的内容中,你可以直接按回车键接受默认值。

接下来安装Express并将其保存到package.json的依赖列表中:

npm install express --save

4.2.2 开始编码

新建app.js,代码如下:

// 导入express模块
const express = require('express');
// 创建应用
const app = express();

// 设置路由
app.get('/', (req, resp) => {
   // 输出响应
   resp.json(req.headers);
});

// 开启监听
app.listen(8080, () => {
   console.log('listen on 8080');
});

4.2.3 运行应用

在终端执行该JS:

node index.js
listen on 8080

使用浏览器访问http://localhost:8080,结果如下:

{
   "host": "localhost:8080",
   "connection": "keep-alive",
   "cache-control": "max-age=0",
   "dnt": "1",
   "upgrade-insecure-requests": "1",
   "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5)
   AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36",
   "sec-fetch-user": "?1",
   "accept":
   "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/ap
   ng,*/*;q=0.8,application/signed-exchange;v=b3",
   "sec-fetch-site": "none",
   "sec-fetch-mode": "navigate",
   "accept-encoding": "gzip, deflate, br",
   "accept-language": "zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7",
   "if-none-match": "W/\"2c9-A5ngF548rGoZQ5LBRc4RaCa3xh8\""
}

4.2.4 小结

本节使用Express开发了一个快速入门示例,开发步骤如下:

(1)创建应用实例。

(2)设置路由。

(3)开启监听。

采用Express框架的优点如下:

· 支持路由,Node.js的http模块路由功能需要自己开发。

· 支持直接输出JSON,要让Node.js的http模块输出JSON,则需要调用JSON.stringify()。