1.NPM的简介:
Node Packaged Modules简称NPM,是Node.js的包管理器。Node.js本身提供了一些基本的API,但这些基本的API并不能满足开发者的需求,所以需要Node.js需要使用NPM来管理开发者自我研发的一些模块,并使其能够用于其他开发者。开发者可以通过NPM提交个人的Node.js模块成果,而其他开发者可以使用NPM下载这些NPM模块包,并将NPM模块应用到项目中。
安装NPM:curl http://npmjs.org/install.sh | sudo sh(linux下)。不过目前Node.js的0.8版本以上自带安装NPM工具。
检查NPM的版本:npm -v。
想要通过NPM来安装模块使用的命令:npm install(uninstall) module_name。在linux中有时还需要sudo。
2.Express框架。
express是一个Node.js的Web开源框架,非常适合Node.js入门学习的开发者,该框架可以快速搭建Web项目开发的框架,其主要集成了Web的http服务器的创建和静态文件管理、服务器url请求处理、GET和POST请求分发、Session处理等功能。
安装express:
4.request框架
request模块为Node.js开发者提供了一种简单访问HTTP请求的方法,request还支持https的访问方法。
request的安装:sudo npm install request.(假设安装路径在/usr/local/lib/node_modules/request/)。
在该路径下新建两个文件:
server.js:
var http=require('http');
var querystring=require('querystring');
http.createServer(function(req,res){
var postdata="";
req.addListener("data",function(postDataChunk){
postdata += postDataChunk;
});
req.addListener("end",function(){
var postStr=JSON.stringify(querystring.parse(postdata));
console.log(postStr+'\n '+req.method);
});
res.writeHead(200,{'Content-Type':'text/plain'});
res.end('Hello world \n'+req.method);
}).listen(1337,"127.0.0.1");
console.log('server is runnning at http://127.0.0.1:1337/');
request_get.js:
var request=require('request');
request.get('http://127.0.0.1:1337',function(error,responce,result){
console.log(result);
});
request.post('http://127.0.0.1:1337',{form:{'name':'linxuanxuan','book':'crazy node js'}},function(error,responce,result){
console.log(result);
});
保存上述文件,在命令行中分别输入
node server.js
node request_get.js
然后在命令行中可以看到
注意这里的post参数需要使用form作为键值。
request post参数可以有两种传递方法。
其中一种是将url和form表单数据作为一个json参数在request.post传递。
格式:request.post({ ‘url’:‘url’ , form:{} } , function(error,responce,result){} );
例如:request.post({ ‘url’:‘http://127.0.0.1:1337’ , form:{'name':'linxuanxuan','book':'crazy node js'} } , function(error,responce,result){} );
第二种是将url和form作为两个参数传递,例如:
request.post('http://127.0.0.1:1337',{form:{'name':'linxuanxuan','book':'crazy node js'}}, function( error, responce, result ) { } );
Node Packaged Modules简称NPM,是Node.js的包管理器。Node.js本身提供了一些基本的API,但这些基本的API并不能满足开发者的需求,所以需要Node.js需要使用NPM来管理开发者自我研发的一些模块,并使其能够用于其他开发者。开发者可以通过NPM提交个人的Node.js模块成果,而其他开发者可以使用NPM下载这些NPM模块包,并将NPM模块应用到项目中。
安装NPM:curl http://npmjs.org/install.sh | sudo sh(linux下)。不过目前Node.js的0.8版本以上自带安装NPM工具。
检查NPM的版本:npm -v。
想要通过NPM来安装模块使用的命令:npm install(uninstall) module_name。在linux中有时还需要sudo。
2.Express框架。
express是一个Node.js的Web开源框架,非常适合Node.js入门学习的开发者,该框架可以快速搭建Web项目开发的框架,其主要集成了Web的http服务器的创建和静态文件管理、服务器url请求处理、GET和POST请求分发、Session处理等功能。
安装express:
Install the executable. The executable's major version will match Express's:
$ npm install -g express-generator@4
Create the app:
$ express /tmp/foo && cd /tmp/foo
Install dependencies:
$ npm install
Start the server:
$ npm start 然后打开浏览器,输入127.0.0.1:3000 具体请见: https://github.com/strongloop/express#quick-start express相关网址:http://expressjs.com/ 3.Socket.io框架 socket.io是一个基于Node.js的项目,其作用主要是将WebSocket协议应用到所有的浏览器,该模块主要应用于实时的长连接多请求项目中。 socket.io的安装:npm install socket.io(在你需要创建项目的目录下进行安装,假设当前装socket.io的目录为/usr/local/lib/node_modules/socket.io)。 socket.io的小例子: 在刚才的目录下创建两个文件: client.html:server.js: 保存文件,在命令行中输入node server.js 用浏览器双击打开client.html.然后按fn+f12进入控制台,即可看到
4.request框架
request模块为Node.js开发者提供了一种简单访问HTTP请求的方法,request还支持https的访问方法。
request的安装:sudo npm install request.(假设安装路径在/usr/local/lib/node_modules/request/)。
在该路径下新建两个文件:
server.js:
var http=require('http');
var querystring=require('querystring');
http.createServer(function(req,res){
}).listen(1337,"127.0.0.1");
console.log('server is runnning at http://127.0.0.1:1337/');
request_get.js:
var request=require('request');
request.get('http://127.0.0.1:1337',function(error,responce,result){
});
request.post('http://127.0.0.1:1337',{form:{'name':'linxuanxuan','book':'crazy node js'}},function(error,responce,result){
});
保存上述文件,在命令行中分别输入
node server.js
node request_get.js
然后在命令行中可以看到
注意这里的post参数需要使用form作为键值。
request post参数可以有两种传递方法。
其中一种是将url和form表单数据作为一个json参数在request.post传递。
格式:request.post({ ‘url’:‘url’ , form:{} } , function(error,responce,result){} );
例如:request.post({ ‘url’:‘http://127.0.0.1:1337’ , form:{'name':'linxuanxuan','book':'crazy node js'} } , function(error,responce,result){} );
第二种是将url和form作为两个参数传递,例如:
request.post('http://127.0.0.1:1337',{form:{'name':'linxuanxuan','book':'crazy node js'}}, function( error, responce, result ) { } );