初识Node.js

  1. Node.js是什么?

Node.js不是一个独立的语言,与3P技术不同,也不是javascript框架,也不是javascript的框架,更不是浏览器的库ExtJs,不能与ExtJs相提并论,Node.js是一个让javascript运行在服务器端的开发平台

  1. Node.js能做什么

Javascript是由客户端而生,Node.js是为服务器端开发而生。

具有复杂逻辑的网站

基于社交网络的大Web的应用

Web Socket服务器

TCP/UDP套接字应用程序

命令行工具

交互式终端程序

  1. 异步式I/O与事件驱动

Node.js最大的特性是采用的异步I/O与事件驱动的架构设计。对于高并发的解决方案,传统的架构师多线程模型,也就是每个业务逻辑提供一个系统线程,通过系统线程切换来弥补同步式I/O调用时的事件开销,Node.js使用单线程模型,在执行的过程中会维护一个事件队列,程序在执行时进入事件循环等待下一个事件到来。

普通:res = db.query(“select * from users”)

Res.output();

Node.js  res=db.query(“select * from user”,function(res){

Res.output();

})

Node.js

Ext.Ajax.request({

         url:’action’,

sync:true //false表示同步

},function(response){

         alert(1)

})

alert(2)

 

安装:

  1. python 2.7+
  2. Node.js 一路next
  3. 设置环境变量(一般默认设置)例如:C/program files/nodejs
  4. 测试:

cmd->node->console.log(“Hello World”)


简单测试js文件
code:
var http = require("http");

function process_request(req,res){
 var body = 'Thanks for calling dingxiaowei\'s WebSide :\n';
 var content_length = body.length;
 res.writeHead(200,{
  'Content-length':content_length,
  'Content-Type':'text/plain'
 });
 res.end(body);
}

var s = http.createServer(process_request);
s.listen(80)


运行:
初识Node.js_第1张图片
浏览器测试效果:
初识Node.js_第2张图片
配置启动web服务器
code
var http = require("http"), 
url = require("url"), 
path = require("path"), 
fs = require("fs"); 

http.createServer(function (req, res) { 
var pathname=__dirname+url.parse(req.url).pathname; 
if (path.extname(pathname)=="") { 
pathname+="/"; 
} 
if (pathname.charAt(pathname.length-1)=="/"){ 
pathname+="index.html"; 
} 

path.exists(pathname,function(exists){ 
if(exists){ 
switch(path.extname(pathname)){ 
case ".html": 
res.writeHead(200, {"Content-Type": "text/html"}); 
break; 
case ".htm": 
res.writeHead(200, {"Content-Type": "text/htm"}); 
break; 
case ".js": 
res.writeHead(200, {"Content-Type": "text/javascript"}); 
break; 
case ".css": 
res.writeHead(200, {"Content-Type": "text/css"}); 
break; 
case ".gif": 
res.writeHead(200, {"Content-Type": "image/gif"}); 
break; 
case ".jpg": 
res.writeHead(200, {"Content-Type": "image/jpeg"}); 
break; 
case ".png": 
res.writeHead(200, {"Content-Type": "image/png"}); 
break; 
default: 
res.writeHead(200, {"Content-Type": "application/octet-stream"}); 
} 

fs.readFile(pathname,function (err,data){ 
res.end(data); 
}); 
} else { 
res.writeHead(404, {"Content-Type": "text/html"}); 
res.end("<h1>404 Not Found</h1>"); 
} 
}); 

}).listen(8080); 

console.log("Server running at http://127.0.0.1:8080/");

启动服务器:

运行效果:
初识Node.js_第3张图片

你可能感兴趣的:(nodejs入门)