Node.js开发入门(一)——安装Node.js及编辑器配置
Node.js是一个轻松构建快速,可扩展的网络应用平台建立在Chrome的JavaScript运行。Node.js使用事件驱动,非阻塞I/O模型,使得它重量轻,高效,完美的数据密集型实时应用程序运行在分布式设备。
Node.js是让JavaScript脱离浏览器运行在服务器的一个平台,不是语言;Node.js采用的Javascript引擎是来自Google Chrome的V8;运行在浏览器外不用考虑头疼的Javascript兼容性问题采用单线程、异步IO与事件驱动的设计来实现高并发(异步事件也在一定程度上增加了开发和调试的难度);Node.js内建一个HTTP服务器,所以对于网站开发来说是一个好消息;
在Windows上安装 Node.js很方便,我们只需要访问node.js官网 http://www.nodejs.org/,点击Download链接,然后选择Windows Installer(我的机器是64bit可选),下载安装包。下载完成后直接双击安装,和其它一般软件安装一样:
选择安装位置:
安装完成:
到此我们已经安装Node.sj完成,以下是Node.js安装目录结构:
启动node
在“开始”-》“程序”找到
直接双击node.js
测试一个简单实例:输出“Hello,World!”
我们进入node之后,可以输入:
console.log("Hello,World!");
然后我们就会看到命令行里输出了:Hello,World!
另外,也可以这样做:在 node.js 的安装目录下,创建一个文件名为:hello.js,代码如下:
/** **/
var sys = require("util");sys.puts("Hello world");
下面,我们来测试一下node.js是否可以正确运行,打开node.js命令提示符:
执行如下图所示:
以上是使用命令行创建的简单Node.js程序,下面我们来看一个复杂点的应用服务程序。 例如,D:Program Files odejs下建立一个node文件夹,然后在里面创建一个 firstapp.js,打开 firstapp,js 输入以下代码:
var http = require('http'); http.createServer(function (req, res) {res.writeHead(200, {'Content-Type': 'text/plain'});res.end('Hello World - Node.js Work. '); }).listen(5656, '127.0.0.1'); console.log('Server running at http://127.0.0.1:5656/');
然后打开命令行,进入node目录,然后在命令行里执行:node firstapp.js 命令,再打开浏览器在浏览器里输入地址: http://127.0.0.1:5656/或 http://localhost:5656,即可运行 firstapp文件的代码。
运行效果如下:
如果没有什么语法之类的错误,就是以上的效果了。
安装环境:
(一)、Windows 下安装 Node.js 环境
到Node官网http://nodejs.org就可以下载到安装包,我是Win7 64位,访问Node官网,可以看到最新版本是0.12.7,点击INSTALL就可以下载msi文件,然后双击就可以安装了。
安装过程非常简单,选中所有选项,Next即可。
msi会把npm(Node Package Manager)一并装上,还会帮你设置好环境变量,把node、npm等加入到path中,所以,你只要打开命令行窗口,就可以干活了。
开始菜单里会添加一个Node.js的目录,如下图所示:
点击“Node.js command prompt”菜单,就会进入Node.js的命令行环境,如下图所示:
在这里可以直接使用node和npm。
如果你输入node并回车,就进入Node的交互式环境,可以输入一些JavaScript命令来看看,比如console.log(“Hello Node.js!”),有反应的哈。输入node的效果,等同于点击开始菜单里的Node.js菜单。
如果你输入npm并回车,就会看到npm的使用帮助,如下图:
基础的环境就这么着了,很简单,接下来我们来发发神经,走走老路,搞个HelloWorld看看。
HelloWorld网站
代码就是这么简单:
- // 引入http模块
- var http = require("http");
- // 创建server,指定处理客户端请求的函数
- http.createServer(
- function(request, response) {
- response.writeHead(200, {"Content-Type": "text/plain"});
- response.write("Hello World!");
- response.end();
- }
- ).listen(8000);
- console.log("Hello World is listening at port 8000");
保存为HelloWorld.js,然后在Node.js的命令行环境下,进入HelloWorld.js所在目录,执行 node HelloWorld.js,网站就可以运行起来了。
我们简单的示例,对任何请求,都返回“Hello World!”文本串,你可以在浏览器里输入“http://localhost:8000”看看效果,我这里是酱紫的:
没什么特别的,丑陋的一逼,对吧。关于http模块是干什么的,看这里http://nodejs.org/dist/v0.12.7/docs/api/http.html。
额,神奇世界都是这么开始的……开始菜单里有Node.js documentation子菜单,可以直通Node.js在线文档,更多精彩可以从那里开始。
(二)、Linux 下安装 Node.js 环境(源码编译安装)
环境:
Ubuntu 12.04.2 LTS (GNU/Linux 3.5.0-23-generic i686)
下载Node.js安装包,请参考网址:http://nodejs.org/download/
这里选择源码包安装方式,安装过程如下:
登陆到Linux终端,进入/usr/local/src目录,如下:
root@ubuntu:~# cd /usr/local/src/
下载nodejs安装包:
#wget http://nodejs.org/dist/v0.10.17/node-v0.10.17.tar.gz
2,解压文件并安装
# tar xvf node-v0.10.17.tar.gz # cd node-v0.10.17 # ./configure # make # make install # cp /usr/local/bin/node /usr/sbin/
查看当前安装的Node的版本
# node -v
v0.10.17
到此整个安装已经完成,如果在安装过程有错误问题,请参考以下解决: 可能出现的问题:
- The program 'make' is currently not installed. You can install it by typing: apt-get install make
# apt-get install make
- g++: Command not found 没有安装过g++,现在执行安装:
#apt-get install g++
测试程序 hello.js:
console.log("Hello World");
# node helloworld.js
另外的一个实例:WebServer
这个简单Node 编写的 Web服务器,为每个请求响应返回“Hello World”。
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World
');
}).listen(1337);
console.log('Server running at port 1337 ');
要运行服务器,将代码编写到文件example.js 并执行 node 程序命令行:
# node example.js
Server running at
http://127.0.0.1:1337/
有兴趣的朋友可以尝试下面一个简单的TCP服务器监听端口1337 并回应的一个例子:
var net = require('net');var server = net.createServer(function (socket) {socket.write('Echo server ');socket.pipe(socket);});server.listen(1337, '127.0.0.1');
NPM简介:
Windows的Node.js安装包安装里包含了Node Pageaged Modules https://npmjs.org/ (npm),这个node.js本身具有基本的模块,有这了npm可以安装丰富的node.js库来完成实际开发需求。
常用命令介绍:
查看帮助
npm help或npm h
安装模块
npm intstall <Module Name>
在全局环境中安装模块(-g:启用global模式)
npm install -g <Module Name>
更多:https://npmjs.org/doc/install.html
卸载模块
npm uninstall <Moudle Name>
显示当前目录下安装的模块
npm list
安装成功后,会在PATH用户环境变量和系统环境中分别添加npm和node.js路径
开发工具:
WebStorm 我下载了个7.0,好像用它的不少,WebStorm下载地址: http://www.jetbrains.com/webstorm/
做.NET开发的可以选择WebMatrix3 ,下载直接安装,操作很方便,不做太多解释,用了一段时间,可以直接建Nodejs项目,如果只在Windows环境下开发,推荐用它
WebMatrix下载地址: http://www.microsoft.com/web/webmatrix/
我最终还是选择了Sublime,可以在各平台下保持个统一个开发工具,配置方法网上有很多
Sublime下载地址: http://www.sublimetext.com/ (软件无需注册,使用过程中时不时会弹出需要注册的窗口,取消即可)
Sublime Node.js开发环境配置
下载并安装Node.js安装包后再开始配置
1.先安装好Sublime Text 2
2.运行Sublime,菜单上找到Tools ---> Build System ---> new Build System
3.在文件中复制入
{"cmd": ["node", "$file"],"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)","selector": "source.javascript" }
4.保存文件为NodeJs.sublime-build
5.菜单上找到Tools ---> Build System --->选择 NodeJs
6.安装Package Control;运行Sublime,按下快捷键Ctrl + `;在控制台中输入如下并回车;
import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
详细请参考:https://sublime.wbond.net/installation#st2
7.安装完成后重新启动Sublime,按下快捷键Ctrl + Shift + P; 输入install,选择Install Package并回车
8.输入nodejs并选择Nodejs安装(可以装上JavaScript & NodeJs Snippets)
9.新建test.js文件,输入 console.log('Hello Node.js'); 按快捷键 Ctrl + B 运行,成功输出! 如下图
这里配置Sublime Node.js开发环境就成功了!
如果想要更好看的主题配色方案请参考:http://www.dbpoo.com/sublime-text2-theme-sod/
扩展:安装多版本管理器
安装多版本管理器nvmw(Node开发指南一书中用的NVM,Windows上好像不行,在www.npmjs.org中找了这个,虽然学习用不上,先装上再说)
安装命令
npm install -g nvmw
因为没有使用到它,所有就不做多的介绍,详细查看
https://npmjs.org/package/nvmw
下次我们会进一步分析HelloWorld,介绍nodejs的基本程序结构和HelloWorld用到的一些知识点。
Node.js开发入门(一)——安装Node.js及编辑器配置相关推荐
- Node.js开发入门—Express安装与使用
之前我们在安装完Node.js后直接写了个HelloWorld网站,这次呢,我们使用Node.js的Web框架Express来重写一下HelloWorld,看看有什么不同.同时我们还会重写之前的文件服 ...
- Node.js开发入门—使用jade模板引擎
在"Node.js开发入门--Express安装与使用"里,我们曾经使用express generator创建了一个HelloExpress网站,express工具为我们生成了基本 ...
- Node.js开发入门—语音合成示例
出于项目需要,搞了一个语音合成(TTS)的小示例,使用的是OKVoice. 我想在PC上测试,OKVoice的快速接入API可以实现我的目的,文档在这里:http://dev.okvoice.com/ ...
- Revit二次开发入门相关安装和配置
Revit二次开发入门相关安装和配置 最近一周,由于项目需要,需要做一个基于Revit的二次开发项目,也特意初步自学了Revit二次开发的相关知识.由于学习时间过短,了解到的只是皮毛,所有还希望大家能 ...
- STM51嵌入式开发入门软件安装-Keil、stc、驱动
STM51嵌入式开发入门软件安装-Keil.stc.驱动 STM51嵌入式开发入门软件安装-Keil.stc.驱动 1 Keil安装 1.1 百度进入官网 1.2 选择C51,点击后需要填的信息随便填 ...
- Windows下Node.js开发入门(1)
没事儿捣腾了一下Node.js,跑了个Hello World,特此记录一下. Windows 下安装 Node.js 环境 到Node官网http://nodejs.org就可以下载到安装包,我是Wi ...
- 如何在Window下安装node\npm\cnpm,并安装vue.js,创建项目
1.安装node.js node.js的官方地址为:https://nodejs.org/en/download/. 根据windows版本后,选择要下载的安装包,下载完毕,按照windows一般应用 ...
- node js 开发网站_使用Node JS开发网站
node js 开发网站 You will have your own fully functional website running on "localhost" after ...
- android ios能否用cocos2d js开发,cocos2d-x支持c++、js、lua开发
作者:左文 链接:https://www.zhihu.com/question/21130385/answer/21789568 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
最新文章
- 矩阵计算在计算机科学中,开发者必读:计算机科学中的线性代数(附论文)
- (转)软件开发人员如何提高自己的软件专业技术方面的具体建议
- P4450-双亲数,P5221-Product,P6055-[RC-02]GCD【莫比乌斯反演,杜教筛】
- 外媒:新iPhone系列配备更大无线充电线圈 反向无线充即将到来
- jenkins java必装插件_Jenkins(三)安装相关插件
- Backbox Linux简介与配置内网IP
- RGB绘制图片Python
- 直流有刷电机(可以用L298N来驱动)
- Mac WebStorm 破解
- java 画正弦函数曲线_JAVA画正弦曲线
- 树莓派搭建物联网服务器
- VMware虚拟机安装Kali破解WiFi密码
- 计算机画图工具怎么缩小图片,win7系统画图工具放大缩小图片的技巧
- 【如何选】校园卡购买必读,移动联通电信校园卡套餐对比及购买策略(1预热)...
- 编译安装apache
- 英文、数字和汉字、日文的字符判断 英文占1个字符,中文汉字占2个字符 el-form表单验证规则
- 联想台式机计算机接口,如果不能使用Lenovo台式计算机的USB接口怎么办
- composer更换镜像源
- 常见的数据校验方式(奇偶,累加,CRC校验)
- 【智驾深谈】一张图看清自动驾驶产业
热门文章
- mysql并发 node_nodejs写入mysql单次数据量过大的解决方法_沃航科技
- jupyter(Anaconda)设置默认打开文件夹
- A5.2021年全国数学建模竞赛B题-赛题分析与评阅要点(乙醇偶合制备C4烯烃分析)
- Jupyter 快速入门
- java类中自定义函数的调用_关于方法:自定义类中对函数的未解析引用
- python的字符编码叙述_Python: 熟悉又陌生的字符编码
- dataframe 如何选中某列的一行_带你领略pandas中多表之间如何处理
- 苹果隐藏app_iOS 14的隐藏功能盘点:不知道等于白更新!
- C++基础18-抽象类-电脑组装练习
- 缺陷定位 | 分析推理定位BUG案例(三)