好的,书接上回,在安装完成Node.js后。我们就可以开始使用它搭建简单的服务端程序了。
Node.js模块和包的使用
工程化的开发离不开项目之间的协作。在开始搭建服务端之前,我们有必要先简单认识一下Node.js的模块(Moudles)机制,这是Node.js进行项目间的封装和依赖调用的途径。
简单来说,就是可以开发我们自己的模块,打成包(package)发布出去,供他人使用。也可以在需要调用模块内容时,获取包含该模块的包并将引入到代码中。
那么引入其他模块时需要使用的语句是require
,他的语法是:
require(模块名称)
他会返回该模块向外导出(exports)的对象或对象集合。
通常,需要定义一个变量来接受返回的对象,例如
var http = require('http')
有些模块是Node.js提供的模块,如http
,fs
,path
这些,称作核心模块
还有更多的是由用户编写的模块,像我们即将使用的express
,body-parser
等,称作文件模块
文件模块并不直接存在于我们安装的Node.js中,需要我们在控制台中使用npm(Node Package Menager)工具进行安装,常用语法是
npm install <package-name>
例如,安装接下来会用到的express
模块:
npm install express
(除了使用包名还可以使用url进行安装)
模块机制和npm的使用还有很多内容值得了解,不过这不是这篇博客的重点,也不需要在一开始就刨根问底。总之,就先开始主要内容吧!
http搭建服务端程序
使用Node.js搭建服务端程序,是它能够接收并处理http请求。
首先,需要引入http
模块。
var http = require('http')
接着,创建可以处理请求的服务端程序,对8080端口开放:
http.createServer((req,res)=>{
console.log('Node.js received a request!'); //控制台打印接受到请求
res.end('Hello world from Node.js!'); //响应'Hello world from Node.js!'
}).listen(8080)
打开浏览器,访问本地的8080端口:
使用Express框架
http模块可以搭建服务端程序,但是对于路由,请求预处理,中间件集成等需求,仅使用它就会显得有些无力。
这时,Express框架就出现了。他是目前在Node.js中使用最广泛地服务端web应用框架。
在引用Express模块之前,首先要在npm中安装它,因为他不是Node.js内置的核心模块:
npm install express
安装成功后可以看到这样的提示:
(@后面跟着的,是express模块的版本号)
接着,使用express重新编写默认路径的服务:
var express = require('express')//引入express模块
let app = express()
//创建get请求服务,路由为默认路径
app.get('/',(req,res)=>{
console