认识express模块
express
模块与 http
模块很相似,都可以创建服务器。不同之处在于,express
模块将更多 Web
开发服务功能封装起来,让 Web
应用开发更加便捷。本节将讲解使用 express
模块创建 Web
服务器,以及 express
模块中请求和响应对象的使用。
express模块的基本使用步骤
express
模块是第三方模块,使用之前,首先需要使用 npm
命令进行下载和安装,命令如下:
npm install express@4
|
express
模块安装完后就可以在 Node.js 程序中使用了,其基本使用步骤如下。
-
导入模块。
-
使用构造函数创建
Web
服务器。 -
调用
listen()
方法启动Web
服务器。
例如,下面代码使用 express
模块创建并启动了一个服务器,服务器地址为 http://127.0.0.1:52273/ ,代码如下:
//导入express模块
var express = require('express');
//创建Web服务器
var app = express();
//启动Web服务器
app.listen(52273, function () {
console.log("服务器监听地址是 http://127.0.0.1:52273");
});
express模块中的响应对象
express
模块提供了 response
对象,用来完成服务器端响应操作,其常用方法及说明如表 14.1 所示。

根据 body
参数数据类型的不同,response
对象可以向客户端返回不同的数据,如表 14.2 所示。

【例14.1】实现向客户端返回数组信息。(实例位置:资源包\源码\14\01)
新建一个 .js
文件,首先导入 express
模块,并通过其构造函数创建一个 Web
服务器,然后使用 use()
方法创建一个数组,通过 response
对象的 send()
方法将其输出到客户端,最后使用 listen()
方法启动 Web 服务器。代码如下:
//引入express模块
var express = require('express');
//创建服务器
var app = express();
//监听请求与响应
app.use(function (request, response) {
//创建数组
var output = [];
for (var i = 0; i < 3; i++) {
output.push({
count: i,
name: 'name - ' + i
});
}
//向客户端返回数组类型的信息
response.send(output);
});
//启动服务器
app.listen(52273, function () {
console.log('服务器监听地址在 http://127.0.0.1:52273');
});
运行 .js
文件,在浏览器中输入 http://127.0.0.1:52273/ ,可以看到如图 14.1 所示的界面效果。从图 14.1 可以看出,向 response
对象的 send()
方法中传递了一个数组类型的参数,返回给客户端的是一个 JSON
数据。

express模块中的请求对象
express
模块提供了 request
对象,用来完成客户端请求操作,其常用属性、方法及说明如表 14.3 所示。

【例14.2】判断当前请求用户使用的浏览器类型。(实例位置:资源包\源码\14\02)
新建一个 .js
文件,导入 express
模块,使用 express()
方法创建一个 Web
服务器,然后在 use()
方法中使用 request.header('User-Agent')
方法获取请求客户端的 User-Agent
信息,通过判断该信息确定用户使用的浏览器类型。代码如下:
//导入express模块
var express = require('express');
//创建服务器
var app = express();
//监听请求和响应
app.use(function (request, response) {
//获取客户端的User-Agent
var agent = request.header('User-Agent');
//判断客户端浏览器的类型
if (agent.toLowerCase().match(/chrome/)) {
//发送响应信息
response.send('<h1>*_*欢迎使用谷歌浏览器</h1>');
} else {
//发送响应信息
response.send('<h1>^_^您使用的不是谷歌浏览器,<br>当然这并不影响浏览网页</h1>');
}
});
//启动服务器
app.listen(52273, function () {
console.log('服务器监听地址在 http://127.0.0.1:52273');
});
运行 .js
文件,分别打开谷歌浏览器和IE浏览器,在地址栏中输入 http://127.0.0.1:52273/ 后,可以看到如图 14.2 所示的界面效果。
