visual studio code 调试nodejs 配置简单HTTP服务器
介绍
Visual Studio Code是一个轻量级的Web集成开发环境on Linux,Mac and Windows,特别是作为前端人员来了,
多了一个可供选择的生产力工具IDE,调试js代码简单方便了很多,笔者搭建Visual Studio Code也碰到了不少坑,特记录下过程;
环境准备:
首先安装nodejs运行环境:
windows下跟mac下安装简单,官网下载安装包安装就可以,linux下ubuntu以及centos都可以用apt等高级命令安装,参见博客 Linux之旅-ubuntu下搭建nodejs环境
安装完成后记得添加环境变量,如我的:

windows下打开powershell或cmd ,输入
node -v
就能查看当前安装的nodejs版本,如提示node 不是内部或外部程序时,记得更改环境变量并重启操作系统;
然后安装nodejs下的http-server
npm install -g http-server
安装成功后输入
http-server
当返回如下页面时表示安装成功,并监听8080端口

打开visual studio code,跟目录下新建app.js(表示项目的启动文件),代码如下
var PORT = 8082; //表示监听端口
var DIR = 'app'; //用于存放html的目录 var http = require('http');
var url=require('url');
var fs=require('fs');
var mine=require('./mine').types;
var path=require('path'); var server = http.createServer(function (request, response) {
var pathname = url.parse(request.url).pathname;
if (pathname.charAt(pathname.length - 1) == "/") {
//如果访问目录
pathname += "index.html"; //指定为默认网页
}
var realPath = path.join(DIR, pathname);
//console.log(realPath);
var ext = path.extname(realPath);
ext = ext ? ext.slice(1) : 'unkonwer';
fs.exists(realPath, function (exists) {
if (!exists) {
response.writeHead(404, {
'Content-Type': 'text/plain'
}); response.write("This request URL " + pathname + " was not found on this server.");
response.end();
} else {
fs.readFile(realPath, "binary", function (err, file) {
if (err) {
response.writeHead(500, {
'Content-Type': 'text/plain'
});
response.end(err);
} else {
var contentType = mine[ext] || "text/plain";
response.writeHead(200, {
'Content-Type': contentType
});
response.write(file, "binary");
response.end();
}
});
}
});
});
server.listen(PORT);
console.log("Server runing at port: " + PORT + ".");
创建mime.js文件,表示解析的文件:
exports.types = {
"css": "text/css",
"gif": "image/gif",
"html": "text/html",
"ico": "image/x-icon",
"jpeg": "image/jpeg",
"jpg": "image/jpeg",
"js": "text/javascript",
"json": "application/json",
"pdf": "application/pdf",
"png": "image/png",
"svg": "image/svg+xml",
"swf": "application/x-shockwave-flash",
"tiff": "image/tiff",
"txt": "text/plain",
"wav": "audio/x-wav",
"wma": "audio/x-ms-wma",
"wmv": "video/x-ms-wmv",
"xml": "text/xml"
};
新建项目文件夹app(对应app.js里的DIR目录),在该文件夹里编辑对应的html以及js,
然后去visual studio code的debug tab下,配置nodejs环境,点击visual studio code会创建launch.json文件于.vscode下,

完整的目录结构如下:

然后就可以F5调试监听了,是不是感觉特别简单,我也觉得,不得不说microsoft的IDE客户端环境做的确实好,本地化完善,比如宇宙第一IDE visual studio,还有针对小团队或开源项目团队的免费社区版,不过只能用于windows下.....!
部分参考自前端大神 王福朋-s便签笔记(14)——用nodejs搭建最简单、轻量化的http server
visual studio code 调试nodejs 配置简单HTTP服务器的更多相关文章
- Visual Studio Code 调试 nodejs (断点调试、自动重启、进程调试)
学习链接: https://cnodejs.org/topic/5a9661ff71327bb413bbff5b https://github.com/nswbmw/node-in-debugging ...
- Visual Studio Code 调试 nodeJS
Step 1: 点击Debug按钮,调出launch.json文件,更改program的路径为目标js文件. 生成的luanch.json文件在.vscode文件下 step2:接下来就可以加断点调试 ...
- Visual Studio Code调试node.js:无法在PATH上找到运行时的node
首先,环境变量Path中加入nodejs的路径: 验证nodejs是否已经加入环境变量: 接着,重新启动Visual Studio Code, 试一下,是不是好了~ 附录:Visual Studi ...
- Visual Studio Code搭建NodeJs的开发环境
一.Visual Studio Code搭建NodeJs的开发环境 1.下载安装NodeJs并配置环境变量 可以参考:NodeJs的安装和环境变量配置 2.下载安装 VS Code编辑器 可以参考:V ...
- Visual Studio Code 调试 PHP
Visual Studio Code 调试 PHP 2018/12/4 更新 Nginx + php-cgi.exe 下与 Visual Studio Code 配合调试 必需环境 Visual St ...
- Visual Studio Code调试electron主进程
Visual Studio Code调试electron主进程 作者: jekkay 分类: electron 发布时间: 2017-06-11 14:56 一·概述 此文原出自[水滴石]: htt ...
- visual studio code 编辑器的配置及快捷键等, vscode, csc
visual studio code (vsc) 对开发node.js,javascript,python,html,golang等比较友好,同时支持git浏览及分屏对比,运行速度快,所以是值得一用的 ...
- 如何使用Visual Studio Code调试PHP CLI应用和Web应用
在按照Jerry的公众号文章 什么?在SAP中国研究院里还需要会PHP开发? 进行XDebug在本地的配置之后,如果想使用Visual Studio Code而不是Eclipse来调试PHP应用,步骤 ...
- Visual Studio Code 调试 SpringBoot
Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-based appl ...
随机推荐
- 将git版本号编译进程序
问题的提出 不管是什么版本管理工具,每一条提交记录都会有一个对应的版本号,一般是一个整数,git是一个hash字符串.不管怎样,这个版本号是唯一的,有时候我们在程序运行的时候会在日志里面输出程序的版本 ...
- STL—对象的构造与析构
STL内存空间的配置/释放与对象内容的构造/析构,是分开进行的. 对象的构造.析构 对象的构造由construct函数完成,该函数内部调用定位new运算符,在指定的内存位置构造对象 ...
- .net 爬虫框架技术选型
个人认为爬虫框架分抓取框架和分析框架 1)抓取框架 .net 市面上好的似乎不多,选择要素分两种:1.轻量型,2.重量型. 1. 轻量型是可以定制一些特殊的功能或者插件开关形式.总体性能高,速度快. ...
- Collections 的 synchronized XXX方法
摘要 static <T> Collection<T> synchronizedCollection(Collection<T> c) 返回指定 collectio ...
- 配置LAMP实现WordPress
环境说明: 在同一台主机上实现LAMP(Linux + Apache + MariaDB + PHP) CentOS 7.3.Apache 2.4.6.MariaDB 5.5.52.PHP 5.4.1 ...
- JavaScript系统学习小结——Object类型、Array类型
今天学习JavaSript中引用变量中的Object类型和Array类型: 1. Js中大多数引用类型值都是Object类型的实例,Object类型在应用程序中存储和传输数据时,是非常理想的选择: 创 ...
- gdb命令中查看地址之x命令
可以使用examine命令(简写是x)来查看内存地址中的值.x命令的语法如下所示: x/<n/f/u> <addr> n.f.u是可选的参数. n是一个正整数,表示需要显示的内 ...
- JAVA环境变量关于
1.为什么要设置classPath? 用于通知JVM Java基础类库的位置.classPath告诉类装载器去哪里寻找第三方类库 自JDK1.5之后便不需要再配置这个变量了 2.为什么安装两个JRE( ...
- 头文件string.h里的函数
.strcpy 函数名: stpcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char *source); 程序例: #include &l ...
- nopCommerce 3.9 大波浪系列 之 微信公众平台登录插件
一.简介 插件源码下载:点击下载 微信公众平台网站授权帮助地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp142114084 ...