Express 教程 01 - 入门教程之经典的Hello World

目录:

前言

一、Express?纳尼?!

二、开始前的准备工作

三、测试安装之经典的Hello World

四、使用express(1)来生成一个应用程序

五、说明


前言:

  本篇文章是建立在Node.js基础之上的,所以读者需要有一点Node.js基础的了解。

  演示我是按照Windows操作系统来的了。Linux的其实命令都差不多,大家应该也可以发现。

  我也是刚学这个,所以很多东西都是我从各大网站上照的,然后附上了我的实践操作及自己的说明吧。

  有什么错误,希望大家及时指明,也请大家见谅。。


一、Express?纳尼?!

  Express 是一个简洁而灵活的 Node.js Web应用框架, 提供一系列强大特性帮助你创建各种Web应用。Express 不对 node.js 已有的特性进行二次抽象,我们只是在它之上扩展了Web应用所需的功能。丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单。


二、开始前的准备工作

  步骤1:首先,我们需要在自己的磁盘分区中,新建一个文件夹,后面我们的所有操作都将在这个文件夹中进行。

  在这里,我以我的D盘做演示。

  运行cmd、启动DOS,输入“D:”回车切换到D盘,然后运行“mkdir NodejsDemo”新建一个名为“NodejsDemo”的文件夹:

  步骤2:在这个文件夹中,我们必须得创建一个“应用程序包文件”,它类似于.NET中的package.json,用于NuGet管理文件版本用的。

  在我们的Express里面呢,我们也需要创建package.json这个文件,它和其他的Node程序包是一样的,在里面Express作为一个依赖。

  你也可以使用 npm info express version 来获取express最新版本号,最好使用最新的版本号,这样新出的功能就不会让你感觉到奇怪了:

  OK,得知目前最新的Express版本号为4.12.2,接下来我们就可以创建package.json这个包文件了。

  package.json文件代码如下:

{
  "name": "NodejsDemo",
  "description": "Hello World test app.",
  "version": "0.0.1",
  "private": true,
  "dependencies": {
    "express": "3.x"
  }
}

  步骤3:现在我们的package.json文件已经准备就绪了,下面我们就可以使用npm(1)来安装依赖项,这里的依赖项仅是Express。

  运行 cd NodejsDemo 进入我们的项目目录,这里也就是我们最开始新建的,也是package.json所在的NodejsDemo文件夹:

  步骤4:然后,我们运行 npm install 命令,安装package.json中声明的依赖项:

  步骤5:当npm完成后,Express 4.12.2和它的依赖项就安装到你的"./node_modules"目录里了。

  你可以通过运行 npm ls 命令来确认一下,它会把Express和它的依赖展示成下面的树形结构:


三、测试安装之经典的Hello World

  第一段中,我们的Express已经安装完成了,下面,我们要来写真正的代码了,也算是测试安装结果吧。

  步骤1:在D:\NodejsDemo,也就是上面我们创建的那个目录中,创建一个js文件:man.js,作为我们的主程序。

  main.js代码如下:

var express = require(‘express‘)
var app = express()

app.get(‘/‘, function (request, response) {
  response.send(‘Hello World‘)
})

var server = app.listen(3000, function() {
    console.log(‘Listening on port %d‘, server.address().port);
});

  上述代码中,我们首先引入express模块,然后使用express()创建一个新的应用程序。

  在这个应用程序实例里,你可以通过  app.VERB() 定义路由,上面的例子是"GET /"返回 "Hello World" 字符串。

  request和 response 对象是和node原生提供给你的一致的,你也可以执行  response.pipe() ,  request.on(‘data‘, callback)  等任何事情在没有Express的情况下可以做的事情。

  然后,我们使用express对象封装好的方法 response.send() ,它会返回指定字符串,并且设置Content-Length。

  最后,我们启动监听3000,并且输出当前的监听信息。

  步骤2:运行cmd,启动DOS,进入该项目目录,运行命令“node main”:

  步骤3:打开浏览器,访问:http://127.0.0.1:3000:

  啊啊啊,每次看到这两个单词,都好激动有木有。。。。。。


四、使用express(1) 来生成一个应用程序

  Express团队维护了一个可以快速生成项目模板的可执行文件,这里命名为express(1)。

  如果您使用npm安装全局的express-generator,那么在你的机器任何位置它都可以被访问。

  步骤1:运行cmd进入DOS,切换到D盘,运行命令 npm install -g express-generator ,-g表示global全局的。效果如下:

  步骤2:这个工具提供了一个非常简单的生成一个程序骨架的功能。但是他也是有局限性的,比如它只支持很少的几个模板引擎。

  而事实上Express几乎支持所有的为Node所建的模板引擎。使用 express --help 查看一下帮助:

  步骤3:如果你想生成一个Jade,Stylus的应用程序,你只需要简单的执行下面的命令即可: express --session --css stylus --ejs myapp

  然后,它就会在我们的D盘中新建了一个myapp的站点,结构如下:

D:\MYAPP
│  app.js
│  package.json
│
├─bin
│      www
│
├─public
│  ├─images
│  ├─javascripts
│  └─stylesheets
│          style.styl
│
├─routes
│      index.js
│      users.js
│
└─views
        error.ejs
        index.ejs

  步骤4:和其他Node程序一样,你必须添加项目依赖:

D:\> cd myapp
D:\myapp> npm install

D:\>cd myapp

D:\myapp>npm install
cookie[email protected] node_modules\cookie-parser
├── [email protected]0.1.2
└── cookie[email protected]

[email protected]2.3.1 node_modules\ejs

[email protected]2.1.2 node_modules\debug
└── [email protected]0.7.0

[email protected]1.5.1 node_modules\morgan
├── basic[email protected]
├── [email protected]1.0.0
└── on[email protected] ([email protected])

serve[email protected] node_modules\serve-favicon
├── [email protected]0.2.4
├── [email protected]0.7.0
├── [email protected]1.3.0
└── [email protected]1.5.1 ([email protected])

[email protected]4.12.2 node_modules\express
├── merge[email protected]
├── cookie[email protected]
├── utils[email protected]
├── [email protected]0.1.2
├── [email protected]0.2.4
├── [email protected]1.1.1
├── range[email protected]
├── escape[email protected]
├── content[email protected]
├── [email protected]1.0.0
├── [email protected]0.3.3
├── [email protected]1.3.0
├── serve[email protected]
├── content[email protected]
├── path[email protected]
├── [email protected]1.0.0
├── [email protected]2.3.3
├── on[email protected] ([email protected])
├── [email protected]1.5.1 ([email protected])
├── [email protected]0.12.1 ([email protected], [email protected], [email protected])
├── proxy[email protected] ([email protected], [email protected])
├── [email protected]1.2.4 ([email protected], [email protected])
└── type[email protected] ([email protected], [email protected])

body[email protected] node_modules\body-parser
├── content[email protected]
├── raw[email protected]
├── [email protected]1.0.0
├── [email protected]1.0.0
├── [email protected]2.3.3
├── on[email protected] ([email protected])
├── iconv[email protected]
└── type[email protected] ([email protected], [email protected])

[email protected]0.42.3 node_modules\stylus
├── css[email protected]
├── [email protected]0.3.5
├── [email protected]0.5.8
└── [email protected]3.2.11 ([email protected], [email protected])

D:\myapp>

命令运行的回显结果

  步骤5:然后,我们就可以运行了!!!哈哈。

  运行命令 node app 启动主程序,如果启动无反应,您也可以切换到bin目录,运行 node www 启动程序:

  步骤6:打开浏览器,访问:http://127.0.0.1:3000:

  步骤7:刷新页面,我们每发出一个请求,express都会做出记录:


五、说明:

  本文就是简单的入门篇,后面有时间我会针对这个站点系统的骨架,目录扫雷式讲解,并且演示进行二次自定义开发。

  大家也可以自己看看这个目录结构,手动修改一下页面,熟悉一下。

时间: 2024-10-27 05:00:53

Express 教程 01 - 入门教程之经典的Hello World的相关文章

【转】MUD教程--巫师入门教程1

<新巫师入门手册> 第一章:观念篇■ 内容提要:什么是巫师?怎样做一个巫师?如何做好一个巫师? 第二章:上手篇■ 内容提要:最简单的房间怎么写?NPC又怎么写?先看懂一些常用的参数? 第三章:理解篇■ 内容提要:什么是LPC?什么是函数.对象?只有理解才有利于消化 第四章:见习篇■ 内容提要:我要工作了,怎么edit?怎么update?又怎么用call? 第五章:补遗篇■ 内容提要:好好消化变量.函数的意义,完全掌握各种符号的运用. 巫师园地 入门手册 观念篇 第 一 章 观 念 篇  认 识

MUD教程--巫师入门教程3

1. 指令格式为:edit <档名>,只加文件名,默认为当前目录,加here,表示编辑你当前所处的房间, 回车后即进入线上编辑系统. 2. 如果这是一个已经有的档案,你可以使用 z 或 Z 来看档案.z表示一次显示20行,Z表示一次显示40行.为了编辑方便,最好在开始时用 n 表示每一行在开头处显示它的行数,再用一次 n 取消行数显示: 3. 还有一种方法 ,就是直接打入行数,则会跳至那行的内容上:4. 如果你开始没打 n ,却想知道现在是第几行请打 = , 想知道内容请打 p :5 如果想直

【转】MUD教程--巫师入门教程2

简单的人物原则上只要有 set_name<名字> . combat_exp <经验>就行了,当然我们总得稍微多添一点了.inherit NPC;void create(){ set_name(<中文名>, ({ <英文id> }) ); set("title", <头衔>);  set("gender",<男性.女性或是无性>); set("age", <年龄>)

【转】MUD教程--巫师入门教程4

我们再次复习一下clean_up()函数返回1的含义,如果clean_up()函数返回1,则MUDOS在这一次的调用时不会做其的任何举动,但到了下一次想调用的时间里,还将再次调用这个对象的clean_up()函数.那么从这可以看出,有以下四种情况不会将其清除出内存:一.非clone出来并且有no_clean_up参数的对象:二.玩家永远不会三.处于一个还存在的环境里四.自己里面存在着玩家 也就是MUDOS定时摧毁内存不需要的对象是由外向内的,比如一个房间,系统只要检查这个房间里没有no_clea

Quartus II 破解教程—FPGA入门教程【钛白Logic】

这一节主要说明如何破解Quartus II 13.1.首先找到我们提供的破解工具,这里我们的电脑是64位的,所以使用64位破解器.如下图. 第一步:将破解工具拷贝到安装目录下“D:\altera\13.1\quartus\bin64”,然后打开破解工具,弹出如下对话框,点击“应用”. 第二步:选择生成license文件的存放路径,这里我们存到安装路径根目录下:“D:\altera”,保存. 第三步:安装license文件,打开Quartus II,选择菜单栏工具“Tools”下面的“Licens

Quartus II 安装教程—FPGA入门教程

Quartus II 工具安装一般分为两个部分,首先是开发工具本身的安装,其次就是器件库的安装,我们可以根据我们的需要选择相应的器件库来安装,这里我们使用Cyclone IV的FPGA,即安装Cyclone器件库即可. 第一步:打开我们的软件安装文件夹找到安装文件,双击打开,如下图. 第二步:弹出如下对话框,点击Next下一步. 第三步:弹出如下对话框,选择"I accept the agreement",再点击Next. 第四步:选择安装路径,这里我们选择安装在了D盘目录D:\alt

编程入门教程

编程入门教程 编程入门教程由QKXue.NET梳理的面向程序开发入门初学者的编程入门教程,是一个涵盖了游戏.PLC.VB.数控.JAVA.APP.Matlab.C语言.Shell.IOS.Android安卓等手机和PC编程的入门教程. 1. 编程入门教程 1.1. 游戏编程入门 游戏编程入门适用于任何对C++语言有基本了解的读者阅读,适宜作为读者进入游戏开发领域的技术入门学习用书. 游戏编程入门介绍如何设计和构建自己的电脑游戏.游戏编程入门不是泛泛地介绍编程理论,而是引导读者开发一个“即插即用”

关于docker入门教程

简介:docker入门教程 docker入门教程翻译自docker官方网站的Docker getting started 教程,官方网站:https://docs.docker.com/linux/started/ 官方网站是一个交互的教程,在左侧是相应的说明,右侧是一个交互的终端,输入预期的目录,可以跳到下一步,大家可以参考我们的翻译,在官网上面运行相应的命令,以验证效果. 译者按:之前的交互教程在新版本的docker官网上已无法找到,但核心的概念流程没有变,仍然可以参考.(2015/9/16

Cognos入门教程

Cognos入门教程 1. ReportStudio入门教程 ReportStudio入门教程(http://blog.csdn.net/column/details/ygy-reportstudio.html) 2.Cognos 函数 3. Framework Manager入门教程 Framework Manager 入门教程(http://blog.csdn.net/column/details/ygy-frameworkmanager.html) 4. Cognos SDK 入门教程 5