Express 是基于Node.Js平台,快速、开放、极简的 web 开发框架。

1.安装

Express的安装通过cmd来进行,过程如下:

首先,先在本地建立一个项目文件夹,取名Nodejs

然后通过cmd输入安装命令:npm init

在name的地方输入express_test(这个名称随意)

然后输入“Yes

这个时候你的项目文件中就会多一个package.json文件。

打开这个文件,你会看到一些应用的名字。

现在可以安装Express了。

在cmd中输入npm install express --save 回车,就可以在线下载了。项目文件中就会多一个“node_modules”的文件夹,这就说明安装成功了。

到此为止,Express安装成功。

2.调试

接下来就是建立一个比较系统的目录结构了。

我是这样建立的,可以作为一个参考:

新建index.js作为程序的入口,在index.js中引用Express。

首先需要搭建一些环境,参考代码如下:

var express = require('express');//引用下载的express
var app = express();//创建server
var port = 3000;//server需要增添的端口 app.use("/",express.static("static"));//static文件夹映射到根目录(express唯一自带的中间键) //请求的方法post & get
//处理链接,并返回相应的数据
//(客户端看不到,在服务器端处理)调试的话用npm install -g node-inspector命令
//运行node-inspector
app.post("/api/json",function(req,res,next){
res.send(JSON.stringify({
id:1,
content:"this is a json content"
}))
}); app.get("/api/script", function(req,res,next){
res.send("alert('get a script')");
}); app.get("/api/html",function(req,res,next){
var html= function(){
/*<a href="#">this is a html text content</a>*/
}
res.send(html.toString().replace("function(){/*","").replace("*/}",""));
}); // app.all("/api/*",function(req,res,next){
// res.send("abc")
// next();
// }) app.listen(port);
console.log('web start at port:' + port);

环境搭建成功后,需要通过命令行来启动。

在cmd中输入:node index.js

这个时候输出内容如下:

这个时候在浏览器输入localhost:3000就可以看到你项目中的index.html文件了。

需要注意的是,在index.js中所有的调试在客户端是看不到的,因为它是服务器脚本,整个过程都在服务器端运行。那么如何才能看到这个调试过程呢?

我们需要的是安装node-inspector。

在cmd中输入:npm install -g node-inspector

安装成功后出现下面的界面:

运行:在cmd输入 node-inspector

正常情况下应该返回这样的代码:

因为node inspector默认的是8080端口,而我本地的8080端口已经被占用,就会报错:

解决的办法很简单,只要修改node-inspect的默认借端口就可以了。

在cmd中输入:node-inspector --web-port=8099

这里的8099就是你要修改的端口号,请改成你自己预设的端口号即可。

接着用node inspector返回的网址(http://127.0.0.1:8099/?port=5858)就可以轻松调试node server中的代码了。

具体做法是在cmd中输入需要调试的文件名:node --debug index.js (这里调试的是index.js)

然后在刚才的网址的浏览器控制台就能看到服务器中的页面了。

Express安装与调试的更多相关文章

  1. Visual Studio 2015 + IIS Express 10.0 调试 ASP.NET 项目

    参考资料: https://msdn.microsoft.com/zh-cn/library/58wxa9w5(v=vs.120).aspx 首先搭建环境, 也就是用 IIS Express 配置一个 ...

  2. Windows8.1系统下让VS2012编译运行IIS Express 64位 调试器

    有时候在window8以上系统中对C#系统进行调试 提示不能使用32位IIS Express,如果每次都采用IIS 在vs代码进行调试的时候很麻烦 下面我们就介绍一下怎么用编译调试64位代码: 网上方 ...

  3. nodejs+express安装

    1.安装nodejs http://www.nodejs.org/下载或直接安装nodejs. 安装默认会勾选加入环境变量. 打开cmd,输入node -v.测试是否成功. 2.安装express 命 ...

  4. Windows Service 开发,安装与调试

    Visual Studio.net 2010 Windows Service 开发,安装与调试 本示例完成一个每隔一分钟向C:\log.txt文件写入一条记录为例,讲述一个Windows Servic ...

  5. ubuntu14.04下nodejs + npm + bower的安装、调试和部署

      1. 简介 本文介绍ubuntu14.04下nodejs+npm+bower的安装.调试和部署 参考文档 https://docs.npmjs.com/getting-started https: ...

  6. postgresql编译安装与调试(二)

    接前文postgresql编译安装与调试(一),继续说说postgresql的编译安装与调试. 上一篇已经详细说明了如何在Linux系统上编译安装postgresql,这次我们在此基础上简单讲讲如何在 ...

  7. MAC上 nodejs express 安装

    最近在MAC上搭建 nodejs环境以及安装 express 框架,遇到了一些问题,不过最后总算还是安装成功了,下面是操作步骤 1.node js 安装 访问nodejs官网进入下载mac上的安装包 ...

  8. Redis安装与调试

    Redis安装与调试 Redis安装与调试linux版本:64位CentOS 6.5 Redis版本:2.8.17  (更新到2014年10月31日) Redis官网:http://redis.io/ ...

  9. 安装ARM调试器

    一.概述 1.调试ARM应用程序的软硬件组成 硬件JTAG/SWD仿真器 Eclipse调试插件 GDB调试客户端 GDB服务器端 JTAG/SWD需要的硬件驱动 2.GNU ARM Eclipse推 ...

随机推荐

  1. JPA主键策略

    JPA 自带的主键策略有 4 种,在枚举 javax.persistence.GenerationType 中,分别是:TABLE.SEQUENCE.IDENTITY.AUTO. TABLE:通过表产 ...

  2. 对<< ubuntu 12.04编译安装linux-3.6.10内核笔记>>的修正

    前题: 在前几个月的时候,写了一篇笔记,说的是kernel compile的事情,当时经验不足,虽说编译过了,但有些地方写的有错误--因为当时的理解是有错误的.今天一一更正,记录如下: 前文笔记链接: ...

  3. 用CSS让网页背景图片居中的方法

    网页背景居中的方法有很多种的.这里介绍一些用CSS让背景图片居中的方法. 让背景图片居中的第一个方法是用像素设定,很多都用这种,但是也是最麻烦的: <div style="width: ...

  4. 增强的for循环(或foreach)

    增强的for循环(也称为foreach循环):不用下标变量,顺序的訪问整个数组.不能以其它顺序訪问数组,或者改变数组的元素. for(elementType element: arrayRefVar) ...

  5. pip和easy_install使用方式

    easy_install 跟 pip 都是 Python 的套件管理程式,有了它們,在使用 Python 開發程式的時候會帶來不少方便. easy_install 和 pip 有什麼不一樣?據 pip ...

  6. 关于websocket中的心跳..

    客户端的实现:1, 如果你正在对流进行读写,那么表示其实你己经在活跃状态,不需要发送心跳消息2, 如果你的网络是空闲的, 那么需要指定一个时间间隔(如20sec)向server发送心跳消息.所谓的心跳 ...

  7. careercup-C和C++ 13.5

    13.5 谈谈C语言关键字”volatile”的意义(或重要性)? 解答 关键字volatile的作用是指示编译器,即使代码不对变量做任何改动,该变量的值仍可能被外界修改.操作系统.硬件或其他线程都可 ...

  8. Distributed locks with Redis--官方

    原文:http://redis.io/topics/distlock Distributed locks with Redis Distributed locks are a very useful ...

  9. c语言实例

    #include <stdio.h> int main() { ; ; i=max(j,k); printf("i=%d\n",i); ; } int max(int ...

  10. [COCOS2DX]第一个开源项目的部署和运行<win32版本>

    1.无法加载项目: 1.1 按照之前的方法创建一个名为FirstDemo的项目,并将下载到的源代码包全部拷贝到FirstDemo中 1.2 点击demo.sln启动项目: 修改属性: 2.无法打开“g ...