NodeJS之Mac初体验
NodeJS之前在Window试用过一下,不过在mac上这种类Unix上属于第一次使用,JavaScript是脚本语言,脚本语言都需要一个解析器才能运行,通常我们在Html页面写的JS,浏览器充当了解析器的角色。而对于需要独立运行的JavaScript,NodeJS就是一个解析器。NodeJS是通过C++语言编写而成,创始人Ryan Dahl最初希望采用Ruby来写Node.js,但是后来发现Ruby虚拟机的性能不能满足他的要求,后来他尝试采用V8引擎,所以选择了C++语言。NodeJS是一种新型的Web服务器和.NET中的IIS以及Java中Appache一样,NodeJS与其他服务器之间最大差别就是NodeJS是单线程的,如果需要多线程的功能我们可以启用更多的Node实例。
NodeJS开发环境
NodeJS的官网https://nodejs.org/可以直接NodeJS,下载pkg文件直接安装,不过这种一般方式一般不推荐,因为NodeJS现在版本很多还不稳定,因此我们需要将先下载一个nvm(node version manager),这样更方便我们切换NodeJS的版本。
1.nvm安装,以下操作都是在终端中操作:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.2/install.sh | bash
2.安装完成之后,我们可以测试一下nvm,如下图所示:
3.安装NodeJS,现在最新版的NodeJS是0.12.7:
nvm install 0.12
4.看一下当前nvm的版本,之后查看一下nvm的管理列表:
nvm use 0.12
5.通过node输出文字:
通过上面的过程我们已经成功的搭建了NodeJS环境,先不要高兴太早,如果你关闭终端重新打开,你会发现node命令无效,这个时候有两个补救办法:
查看~/.bash_profile的命令是否存在以下命令,如果不存在说明shell不知道nvm的存在,加上命令(keso本人的用户名):
export NVM_DIR="/Users/keso/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
设置默认的NodeJS版本:
nvm alias default 0.12
Express开发框架
Express 是一个基于 NodeJS 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。Express 不对 NodeJS已有的特性进行二次抽象,只是在NodeJS之上扩展了 Web 应用所需的基本功能,就像ASP.NET MVC对ASP.NET进行过封装一样,使开发变得更有效率。安装Express之前我们需要简单的了解下npm,英文全称是node package manager,包管理器负责管理安装开发包和管理依赖项,类似于Ruby 中的 gem,ASP.NET中的Nuget以及iOS中的CocoaPods。
1.安装命令,Express镜像使用了淘宝的;
mkdir NodeJS && cd NodeJS
npm install express --registry=https://registry.npm.taobao.org
2.查看Express是否安装成功:
ls node_modules
npm list
3.新建一个JS文件:
touch keso.js
添加以下代码:
// 引入 `express` 模块
var express = require('express');
// 调用 express 实例
var app = express(); // app 本身有很多方法,其中包括最常用的 get、post、put/patch、delete,在这里我们调用其中的 get 方法,为我们的 `/` 路径指定一个 handler 函数。
// req和res是reques和response的缩写
app.get('/', function (req, res) {
res.send('博客园-FlyElephant,原文地址:http://www.cnblogs.com/xiaofeixiang');
}); // 监听本地的 3000 端口
app.listen(3000, function () {
console.log('监听3000端口');
});
4.执行JS文件,在浏览器中可以看到响应的文字,然后在浏览器中输入localhost:3000,就可以看到想要的效果:
node keso.js
NodeJS初步的环境通过本文应该是搭建好;
NodeJS之Mac初体验的更多相关文章
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- Visual Studio for Mac 初体验
你喜爱的 IDE,现在可用于 Mac 来自:https://www.visualstudio.com/zh-hans/vs/visual-studio-mac/ 惊不惊喜?意不意外?惊喜但不意外,因为 ...
- Deno下一代Nodejs?Deno初体验
前言 Ryan Dahl之父发布了新的项目Deno,很多IT媒体都使用了标题“下一代Nodejs”,首先我们看一下Deno的特性: 1.支持typescript (nodejs目前也支持). 2.无p ...
- Mac下nodeJS初体验
Mac下nodeJS初体验 这两天博主出门在外,抽空体验一下大名鼎鼎的node 安装 brew install node 安装测试 $ node -v v8.4.0 运行本地脚本 用文本编辑器编辑一段 ...
- Node.js 网页瘸腿爬虫初体验
延续上一篇,想把自己博客的文档标题利用Node.js的request全提取出来,于是有了下面的初哥爬虫,水平有限,这只爬虫目前还有点瘸腿,请看官你指正了. // 内置http模块,提供了http服务器 ...
- Xamarin.iOS开发初体验
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0
- Docker初体验
## Docker初体验 安装 因为我用的是mac,所以安装很简单,下载dmg下来之后拖拽安装即可完成. 需要注意的就是由于之前的docker是基于linux开发,不支持mac,所以就出现了docke ...
- node.js 初体验
node.js 初体验 2011-10-31 22:56 by 聂微东, 174545 阅读, 118 评论, 收藏, 编辑 PS: ~ 此篇文章的进阶内容在为<Nodejs初阶之express ...
- grunt 构建工具(build tool)初体验
操作环境:win8 系统,建议使用 git bash (window下的命令行工具) 1,安装node.js 官网下载:https://nodejs.org/ 直接点击install ,会根据你的操 ...
随机推荐
- ViewPager 无限循环
Overview 我们在使用ViewPager来制作图片轮播的时候,常常为ViewPager不能一直无限循环的问题所苦恼.对于这个问题,目前从网上找到了两个思路来解决: 将 ViewPager 的Co ...
- 【莫队算法】【权值分块】bzoj3920 Yuuna的礼物
[算法一] 暴力. 可以通过第0.1号测试点. 预计得分:20分. [算法二] 经典问题:区间众数,数据范围也不是很大,因此我们可以: ①分块,离散化,预处理出: <1>前i块中x出现的次 ...
- BZOJ 4610: [Wf2016]Ceiling Functi 水题
4610: [Wf2016]Ceiling Functi 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=4610 Description ...
- 2013-2014 ACM-ICPC, NEERC, Southern Subregional Contest Problem F. Judging Time Prediction 优先队列
Problem F. Judging Time Prediction 题目连接: http://www.codeforces.com/gym/100253 Description It is not ...
- lua中的pairs和ipairs差别
pairs Returns three values: the next function, the table t, and nil, so that the construction for k, ...
- C#打印图片
打印的原理是:生成mdi文件,系统碰到mdi的时候会自动以打印的方式处理.所以,不管用什么模板,什么方式:能在PrintPage事件处理中,生成一张要打印内容的图片就OK了! C#实现打印源码如下: ...
- 大数据以及Hadoop相关概念介绍
一.大数据的基本概念 1.1.什么是大数据 大数据指的就是要处理的数据是TB级别以上的数据.大数据是以TB级别起步的.在计算机当中,存放到硬盘上面的文件都会占用一定的存储空间,例如: 文件占用的存储空 ...
- How do I debug a published XBAP file in VS2010?
I need to debug a full-trust application either by specifying a URL or, ideally, from within the web ...
- ASP.NET Web API实践系列09,在Fiddler和控制台中模拟GET和POST请求
ASP.NET Web API本质是由一个进程托管的一组类,需要宿主,这个宿主可以是ASP.NET应用程序,可以是MVC项目,可以是控制台应用程序,也可以是自己定制的宿主. 在VS2012中创建一个& ...
- 在ASP.NET MVC中使用Log4Net记录异常日志,出错时导向到静态页
本篇体验在ASP.NET MVC 4中使用Log4Net记录日志. 通过NuGet安装Log4Net. 需求是:当出错时导向到Error.html静态页面,Log4Net记录错误信息. 大致的思路是: ...