前端之魂,触碰后端的手——Node.js学习之路(二)

系列文章:
前端之魂,触碰后端的手——Node.js学习之路(一)

书接上回,一段简单的代码似乎与我们曾经使用Apache学习时一样,在我们的机器上打造出了一个服务器,然而我们的目标是星辰大海,怎么能只满足于输出一个hello world。所以让我们的手伸的更远一些。

本次我们绕靠繁琐的node.js原生方法,直接使用一款基于node.js平台打造的开发框架————express————来继续我们的学习。那么什么是 express 呢?

其实从官方的描述:

Express 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。

我们已经窥得一二,说白了原生 node.js 的代码难写晦涩,大牛们不甘寂寞自己封装了一个工具出来,就如同当年人们嫌弃原生 javascript 难写而产出了 jquery 一样。

很棒不是么?我们后端的 JQuery((੭ु´・ω・`)੭ु⁾⁾好吧其实只是个比喻)。闲言少叙我们直接开始使用吧。

开创一个新工程

首先要明确,所有的工程都是从新建文件夹开始的,而且越是牛X的工程文件夹的名字就不能跌份儿。我们就先新建一个文件夹,名字一定要霸气外露,就叫 myproject 吧。

然后通过你们的终端工具进入这个文件夹,并且执行一下:

1
$ npm init

然后我们的 npm 老管家就会忠心耿耿的问:主人你的工程名叫啥,版本号怎么定,您要不要整点法律文书什么的……在一路回车之后,我们顺利完成了项目的初始化,这个时候我们的目录里应该是这样的:

1
2
myproject
└── package.json

既然说到了这里就顺便解释一下package.json这个文件的作用,简单来说这个文件是npm老管家脑子不好使的时候用来记事的备忘录,内部是一个标准的json对象,其中记录了大量这个工程建立时候发生的事情,最为重要的一项应该是名里带有"dependencies"的几个字段,只要有了这个文件,老管家到哪里都能想起当时引入了那些依赖库建立的这个工程。

之后我们安装express:

1
$ npm install express --save-dev

这还是说一下--save-dev 这句参数的妙用,--save 是我们督促老管家一定要把这个包记下来,-dev 则是告诉老管家这个包是我们开发阶段用的,以后正式发布没准还换别的。

回车后命令行里一通乱跑,安装好express后我们的文件夹里也多出了node_modules文件夹。
此时我们在自己的工程中建立app.js文件,并写入如下内容:

1
2
3
4
5
6
7
8
9
var express = require('express');
var app = express();
app.get('/',function(req,res){
res.send('hello world');
})

app.listen(3000,function(){
console.log('server is running at 3000');
});

然后我们用node来跑一下这个段程序:

1
$ node app.js

如果顺利运行了我们在浏览器里打开localhost:3000同样会看到熟悉的hello world.
(未完待续)