node学习
1. 创建第一个应用
- 使用require引入模块
var http = require("http");
- 使用http.createServer()创建服务器,并使用 listen 方法绑定 8888 端口。函数通过 request, response 参数来接收和响应数据。
var http = require('http');
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
response.end('Hello World\n');
}).listen(8888);
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
运行上面代码 node server.js
2. npm 使用
- npm -v 查看npm版本
- npm install express 安装express模块
- var express = require('express'); 使用express模块
-
- npm install express # 本地安装
- npm install express -g # 全局安装
- npm list -g 查看所有全局安装的模块
- npm list express 查看express模块版本号
- npm uninstall express 卸载express模块
- npm ls 命令查看是否模块还存在
- npm update express 更新express模块
- npm search express 搜索express模块
3.node.js 回调函数 require('fs')
- 阻塞代码 fs.readFileSync('文件名')
$ node main.js
菜鸟教程官网地址:www.runoob.com
程序执行结束!
- 非阻塞代码 fs.readFile('文件名')
$ node main.js
程序执行结束!
菜鸟教程官网地址:www.runoob.com
读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。
异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。
其他命令:https://www.runoob.com/nodejs/nodejs-fs.html
4. node.js EventEmitter
// 引入 events 模块
var events = require('events');
// 创建 eventEmitter 对象
var eventEmitter = new events.EventEmitter();
- 常用调用方法
- eventEmitter.on(event,listener) 为指定事件注册一个监听器,接受一个字符串 event 和一个回调函数。
server.on('connection', function (stream) {
console.log('someone connected!');
});
- eventEmitter.emit(event,[arg1],[...]) 按监听器的顺序执行执行每个监听器,如果事件有注册监听返回 true,否则返回 false。
5. NODE.js 路由 模块 url
- 获取GET请求内容,获取 URL 的参数,我们可以使用 url.parse 方法来解析 URL 中的参数
var params = url.parse(req.url, true).query;
var http = require('http');
var url = require('url');
var util = require('util');
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain'});
// 解析 url 参数
var params = url.parse(req.url, true).query;
//在浏览器中访问 http://localhost:3000/user?name=菜鸟教程&url=www.runoob.com 然后查看返回结果:
res.write("网站名:" + params.name);
res.write("\n");
res.write("网站 URL:" + params.url);
res.end();
}).listen(3000);
- 获取 POST 请求内容
post = querystring.parse(post);
5. Node.js 常用工具 util
详细方法:https://www.runoob.com/nodejs/nodejs-util.html
6. node.js 工具模块
常用的工具模块 :https://www.runoob.com/nodejs/nodejs-utitlity-module.html

浙公网安备 33010602011771号