express

Express的安装和初始化

Express
@(express)[mac|nodejs|angularjs|bootstrap|jquery]
Express简介
Express提供了一个轻量级模块,把Node.js的http模块功能封装在一个简单易用的接口中。Express也扩展了http模块的功能,使你轻松处理服务器的路由、响应、cookie和HTTP请求的状态。使用Express可以充当Web服务器。

后端初始化

安装express
找到合适的路径创建项目的文件,在终端中输入(以下都是终端命令)

mkdir projectName

进入项目

cd projectName

创建一个 npmpackage.json 配置文件

npm init

安装 express 并将其保存到依赖列表中

npm install express --save

查看 express 的版本

express --version

快速创建Express应用骨架
使用全局方式安装 Express 应用生成器

npm install express-generator -g

在安装了 express 的文件夹中快速生成 Express 应用

express appName

生成的目录结构如下

appName/
├── app.js
├── bin
│   └── www
├── package.json
├── public
│   ├── images
│   ├── javascripts
│   └── stylesheets
│       └── style.css
├── routes
│   ├── index.js
│   └── users.js
└── views
    ├── error.jade
    ├── index.jade
    └── layout.jade

提示:public
是放置静态文件的目录,routes
是放置路由文件的目录,view
是放置模板引擎的目录

由于 Express 中的 npm 配置文件 package.json 已经定义好了模块,如下依赖列表dependencies

{
  "name": "firstapp",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.17.1",
    "cookie-parser": "~1.4.3",
    "debug": "~2.6.3",
    "ejs": "^2.5.7",
    "express": "~4.15.2",
    "jade": "~1.11.0",
    "morgan": "~1.8.1",
    "serve-favicon": "~2.4.2"
  }
}

使用 npm 安装这些模块

npm install

运行 Express 应用

node bin/www

在浏览器中输入http://localhost:3000
,显示如下表明运行成功

**Express**Welcome to Express

同时可以在终端中,查看HTTP
请求日志(该打印日志与模块morgan
有关)

GET / 200 584.249 ms - 170
GET /stylesheets/style.css 200 5.106 ms - 111
GET /favicon.ico 404 39.354 ms - 1315
GET / 304 26.731 ms - -
GET /stylesheets/style.css 304 1.134 ms - -
GET / 304 9.207 ms - -GET /stylesheets/style.css 304 0.644 ms

提示:其中200
表明请求被正常处理,304
表明服务器允许请求访问资源

如果想要更改访问的端口号,找到目录bin/www
修改 port 变量的端口号

var port = normalizePort(process.env.PORT || '7101'); 

修改之后,按住Ctrl + C
停止运行bin/www
, 重新运行bin/www
(也可以安装使用pm2supervisor等监视程序变化)打开 Chrome 继续访问http://localhost:7101

前端初始化

使用bower初始化前端项目目录
使用全局安装 bower

npm install -g bower

提示:Bower是一个前端技术的软件包管理器,可用于搜索、安装和卸载一些前端的网络资源,如JqueryAngularJSBootStrap等库文件,当然也可以安装一些自动化工具,例如Grunt

创建一个 bowerbower.json 配置文件

bower init

配置文件如下所示(大同小异)

{
  "name": "firstapp",
  "description": "",
  "main": "",
  "license": "MIT",
  "homepage": "",
  "private": true,
  "ignore": [
    "**/.*",
    "node_modules",
    "bower_components",
    "test",
    "tests"
  ],
  "dependencies": {
    "bootstrap": "^3.3.7"
  }
}

提示:默认的依赖是放置在bower_components
目录下,这并不是我们想要的,因为在 Express项目中默认的静态文件放置在public
目录下,所以需要设置放置目录为public
目录

自定义包的安装目录
在public
目录下,创建一个lib
目录用于存放前端库

mkdir public/lib

创建配置文件.bowerrc
(名字固定),该配置文件配置 bower 的下载代码包的目录

vim .bowerrc

这是一个标准的 JSON 文件,输入配置信息

{ "directory":"public/lib"}
图片.png

安装前端的库文件
安装 boostrap,安装完以后可以看见在public/lib
目录下发现bootstrap和jquery

bower install bootstrap --save

安装 angularjs

bower install angular --save
图片.png

提示:需要注意的是bootstrap和angular都需要依赖于jquery,所以会同时安装jquery

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,417评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,921评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,850评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,945评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,069评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,188评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,239评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,994评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,409评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,735评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,898评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,578评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,205评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,916评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,156评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,722评论 2 363
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,781评论 2 351

推荐阅读更多精彩内容