node入門(一)--モジュール内蔵

13454 ワード

Global and window全体の対象はまず、nodejsをダウンロードしてインストールします.
//node    global
//       window
global.setTimeout(function () { 
    console.log("xx");
},1000);
//global       setTime(), setInterval()
//         —    global
console.log(__dirname);
//         
console.log(__filename);
process.exit()プロセス
console.log("ceshi");
console.log("ceshi");
process.exit();//      ,     
console.log("ceshi");
node内蔵モジュール
  :require(‘   ’)
utilモジュール
    ,    
isArray(),isRegExp(),isDate(),isError

eg:
var util = require('util');
//    ,      
console.log(util.isArray([]));
httpモジュール
      
  :request({host,port,path,method,headers},callback)
var http = require('http');
//    request  
http.request({
    host: 'www.baidu.com',//  
    port: 80,
    path: '/',//   
    method : 'get',
    headers:{//      ip        
        host:'file.home.com'
    }
}, function (response) {
    var datas = [];
    //    ,     
    response.on('data', function (data) {
        datas.push(data);
    });
    response.on('end', function () {
        console.log(datas.join(''));
    })
}).end();
createServerはサーバーを作成します.
       :
createServer(cb(req,resp)),listen(port,cb))
response.writeHead(200,{})
//        

var http = require('http');
http.createServer(function (req,resp) {
    /*resp.writeHead(302,{//       
     location : 'http://www.baidu.com'
     });*/
    //     ,         :text/html
    resp.writeHead(200,{
        'Content-Type' : 'text/plain'
    });
    resp.write('

11___11

'
); //write resp.end('

js js JS

'
);//end }).listen(3000,function () { console.log(' '); });
get方式でサーバとインタラクションする
var http = require('http');
var url = require('url');//  url        
var queryString = require('querystring');//  

http.createServer(function (req,resp) {
    /*get    */
    console.error(url.parse(req.url));
    /**   url parse   get    
    * Url {
     protocol: null,
     slashes: null,
     auth: null,
     host: null,
     port: null,
     hostname: null,
     hash: null,
     search: '?name=123&password=321',
     query: 'name=123&password=321',
     pathname: '/',
     path: '/?name=123&password=321',
     href: '/?name=123&password=321' }
    * */
     var query = url.parse(req.url).query;
    console.log(query); //name=123&password=321
    //  queryString    json
    console.log(queryString.parse(query));
    //{ name: '123', password: '321' }

    resp.writeHead(200,{//    
        'Content-Type' : 'text/html'
    });
    resp.end('
'
+ '
'
+ '
'
+ '' + ''); }).listen(3000,function () { console.log(' '); });
post方式を使ってサーバとインタラクションする
var http = require('http');
var url = require('url');//  url        
var queryString = require('querystring');//  

http.createServer(function (req,resp) {
    /*post    */
    var datas = [];
    // req   data  
    req.on('data',function (data) {
        datas.push(data);
    });
    req.on('end',function () {
        console.log(datas.join('')); 
        //name=123&password=123
        console.log(queryString.parse(datas.join(''))); 
        //{ name: '123', password: '123' }
    });

    resp.writeHead(200,{//    
        'Content-Type' : 'text/html'
    });
    resp.end('
'
+ '
'
+ '
'
+ '' + ''); }).listen(3000,function () { console.log(' '); });
ファイルシステムモジュール
eadFile-readdir
readFile(path,cb(err,data))     
readdir(path,cb(err,files))         
writeFile(path,data)     
unlink()     
mkdir()       
rmdir()       
exists()           ,    
existsSync()          
rename()        
//test.txt      

Hello world

var fs = require('fs'); // . fs.readFile('test.txt',function (err,data) { // , toString(); console.error(data.toString()); //

Hello world

}); // , fs.readdir('.',function (err,dirs) { console.log(dirs); }); // fs.writeFile('./test.txt','

'
,function (err) { console.log(arguments); })
サブプロセスモジュール
exec(cmd,{encoding:'GBK'},callback(err,data))
var http = require('http');
var child_process = require('child_process');
http.createServer(function (req, resp) {
    resp.writeHead(200, {//    
        'Content-Type': 'text/html'
    });
    // help  ipconfig
    child_process.exec('help',{encoding:'GBK'},function (err,data) {
        resp.end(data);
    });
    /*child_process.exec('ipconfig',{encoding:'GBK'},function (err,data) {
        resp.end(data);
    });*/
}).listen(3000, function () {
    console.log('      ');
});