初识Node.js
来源:互联网 发布:更改数据库所有者 编辑:程序博客网 时间:2024/06/04 18:28
- Node.js是什么?
Node.js不是一个独立的语言,与3P技术不同,也不是javascript框架,也不是javascript的框架,更不是浏览器的库ExtJs,不能与ExtJs相提并论,Node.js是一个让javascript运行在服务器端的开发平台
- Node.js能做什么
Javascript是由客户端而生,Node.js是为服务器端开发而生。
具有复杂逻辑的网站
基于社交网络的大Web的应用
Web Socket服务器
TCP/UDP套接字应用程序
命令行工具
交互式终端程序
- 异步式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)
安装:
- python 2.7+
- Node.js 一路next
- 设置环境变量(一般默认设置)例如:C/program files/nodejs
- 测试:
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)
运行:
浏览器测试效果:
配置启动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/");
启动服务器:
运行效果:
0 0
- Node.js初识
- 初识Node.js
- 初识node.js
- node.js 初识
- 初识Node.js
- 初识node.js
- node.js初识
- Node.js 初识
- node.js初识
- 初识Node.js
- 《初识Node.js》
- 初识Node.js
- 初识Node.js
- node.jsの初识
- Node.js初识
- node.js初识-千里之行始于足下
- 初识 node.js
- 初识Node.js
- 开始学习嵌入式
- 吾日三省吾身系列,大部分内容来自互联网,文章内容少部分原创,仅为了记录学习过程
- 第二章思维导图
- canvas下拉刷新--模仿水滴
- N-Queens
- 初识Node.js
- 使用ecshop电子商务系统的100个小问题
- 队列
- 【问底】李平:大型网站的灵魂——性能
- N-Queens II
- quick-cocos2dx 学习篇(一) -------WINDOWS IDE断点调试搭建
- 固态硬盘(SSD)原理简介
- <深入剖析Nginx> 编译安装nginx 以及使用eclipse编译开发nginx
- 1030. 完美数列(25)