express 是基于 Node.js 平台,快速、开放、极简的 Web 开发框架
安装
首先假定你已经安装了 Node.js,接下来为你的应用创建一个目录,然后进入此目录并将其作为当前工作目录。
$ mkdir myapp
$ cd myapp
通过 npm init
命令为你的应用创建一个 package.json
文件。 欲了解 package.json
是如何起作用的,请参考 Specifics of npm’s package.json handling.
$ npm init
此命令将要求你输入几个参数,例如此应用的名称和版本。 你可以直接按“回车”键接受大部分默认设置即可,下面这个除外:
entry point: (index.js)
键入 app.js
或者你所希望的名称,这是当前应用的入口文件。如果你希望采用默认的 index.js
文件名,只需按“回车”键即可。
接下来在 myapp
目录下安装 Express 并将其保存到依赖列表中。如下:
$ npm install express --save
如果只是临时安装 Express,不想将它添加到依赖列表中,可执行如下命令:
$ npm install express --no-save
npm 5.0+ 版本在默认情况下会将安装的模块添加到
package.json
文件中的dependencies
列表中。对于较老的 npm 版本,你就必须指定--save
参数。然后,照旧执行npm install
命令即可自动安装依赖列表中所列出的所有模块。
使用
使用express我们只需要简单三步
// app.js
// 1. 引入express
const express = require('express');
// 2. 创建实例
const app = express();
// 3. 监听服务器
app.listen(3000, ()=> console.log('server run at port 3000'));
这样,一个简单的服务器就搭建好了,接下来通过 node app.js
启动该服务,通过 ctrl+c
来结束
这里由于每次修改
app.js
内容都要重启一次服务,所以建议使用nodemon
一个第三方库,通过npm install nodemon
就OK,然后同过nodemon app.js
启动服务,它会实时监听我们的修改,自动更新
处理客户端传来的请求
// app.js
const express = require('express');
const app = express();
// 静态化,让app.js同级目录为一个静态可访问页面,这样我们就可以通过localhost:3000/xxx.html访问本地HTML文件了
app.use(express.static('./'));
app.get('/', (req, res) => {
res.send('Hello Express');
})
app.listen(3000);
这样,当我们发送一个GET请求后就会收到 app.js
中 res.send()
发送的内容,给出原生javascript
发送get请求
<script>
let xhr = new XMLHttpRequest();
xhr.open('/', 'get');
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
console.log(JSON.parse(xhr.responseText));
}
}
</script>
当我们刷新一次页面就可以在控制台看到Hello Express
,入门级Express完成