<node 开发指南> 小结
2015-04-25 00:00
281 查看
模块module和包package
require
module.exports =
#核心模块
## 全局对象
process
描述当前node进程状态的对象,提供一个与操作系统的简单接口
方法
process.argv
process.stdout
process.stdout.write
process.stdin
process.nextTick(callback)
console
提供控制台标准输出
console.log
console.error
console.trace
util
工具类
util.inherits 实现对象间原型继承的函数
util.inspect 是将一个任意对象转换为字符串的函数,通常用于调试和错误的输出。
events
事件驱动
var events = require("events")
事件发射与事件监听器的功能。
events模块只提供了一个对象,events.EventEmitter
var emitter = new events.EventEmitter();
// 监听事件的发生
emitter.on("someEvents",function(data){
});
// 触发事件发生
emitter.emit("someEvents",data)
emitter.once(event,listener)
emitter.removeListener(event,listener)
emitter.removeAllListener([event])
error 事件
继承EventEmitter
具有某个实体功能的对象实现事件符合语义,事件的监听和发射应该都是一个对象的方法。
javascript的对象机制是基于原型的,支持部分多重继承,继承EventEmitter不会打扰对象原有的继承关系
fs
文件系统
var fs = require("fs");
所有方法都提供了异步和同步的两个版本
fs.readFile(filename,[encoding],[callback(err,data)])
fs.readFileSync(file,[encoding]);
PS:需要使用try和catch来捕获并处理异常
fs.open(path,flags,[mode],[callback(err,data)]);
是 POSIX open函数的封装
flags 可以是 r / w / a
fs.read(fd,buffer,offset,length,position,[callback(err,bytesRead,buffer)])
# http 服务器和客户端
var http = require("http")
http.createServer(function(req,res){
});
http.server 的事件
继承EventEmitter。
request
connection
close
var http = require("http")
var server = new http.server();
server.on("request",function(req,res){
});
http.ServerRequest
http请求一般可以分为两个部分:请求头(requestHeader)和请求体(requestBody)
data
end
close
获取get请求的内容
url模块的 parse函数提供了这个功能。
var url = require("url");
获取post请求内容
可以监听事件去处理
http.ServerResponse
返回客户端的信息
三个重要的成员函数
1.返回相应头
response.writeHead(statusCode,[headers])
2.响应内容
response.write(data,[encoding])
3.结束请求
response.end([data],[encoding])
# http 客户端
http.request(options,callback)
options 参数
host
port
method
path
headers
http.get(options,callback)
使用的时候别忘记了最后的 end()方法
request.abort()
request.setTimeout()
http.ClientResponse
response.setEncoding()
response.pause()
response.resume()
require
module.exports =
#核心模块
## 全局对象
process
描述当前node进程状态的对象,提供一个与操作系统的简单接口
方法
process.argv
process.stdout
process.stdout.write
process.stdin
process.nextTick(callback)
console
提供控制台标准输出
console.log
console.error
console.trace
util
工具类
util.inherits 实现对象间原型继承的函数
util.inspect 是将一个任意对象转换为字符串的函数,通常用于调试和错误的输出。
events
事件驱动
var events = require("events")
事件发射与事件监听器的功能。
events模块只提供了一个对象,events.EventEmitter
var emitter = new events.EventEmitter();
// 监听事件的发生
emitter.on("someEvents",function(data){
});
// 触发事件发生
emitter.emit("someEvents",data)
emitter.once(event,listener)
emitter.removeListener(event,listener)
emitter.removeAllListener([event])
error 事件
继承EventEmitter
具有某个实体功能的对象实现事件符合语义,事件的监听和发射应该都是一个对象的方法。
javascript的对象机制是基于原型的,支持部分多重继承,继承EventEmitter不会打扰对象原有的继承关系
fs
文件系统
var fs = require("fs");
所有方法都提供了异步和同步的两个版本
fs.readFile(filename,[encoding],[callback(err,data)])
fs.readFileSync(file,[encoding]);
PS:需要使用try和catch来捕获并处理异常
fs.open(path,flags,[mode],[callback(err,data)]);
是 POSIX open函数的封装
flags 可以是 r / w / a
fs.read(fd,buffer,offset,length,position,[callback(err,bytesRead,buffer)])
# http 服务器和客户端
var http = require("http")
http.createServer(function(req,res){
});
http.server 的事件
继承EventEmitter。
request
connection
close
var http = require("http")
var server = new http.server();
server.on("request",function(req,res){
});
http.ServerRequest
http请求一般可以分为两个部分:请求头(requestHeader)和请求体(requestBody)
data
end
close
获取get请求的内容
url模块的 parse函数提供了这个功能。
var url = require("url");
获取post请求内容
可以监听事件去处理
http.ServerResponse
返回客户端的信息
三个重要的成员函数
1.返回相应头
response.writeHead(statusCode,[headers])
2.响应内容
response.write(data,[encoding])
3.结束请求
response.end([data],[encoding])
# http 客户端
http.request(options,callback)
options 参数
host
port
method
path
headers
http.get(options,callback)
使用的时候别忘记了最后的 end()方法
request.abort()
request.setTimeout()
http.ClientResponse
response.setEncoding()
response.pause()
response.resume()
相关文章推荐
- <Portlet开发指南>第二章
- <Portlet开发指南>第六章
- <Portlet开发指南>第五章
- <portlet开发指南>地八章
- Programming Windows程式开发设计指南->第七章 例子程序2
- <学习html>第二天笔记-标签分类、关系;开发工具;文档类型;标签语义化;HTML标签;问题“图像标签代码语法无误,但是图像显示不出来”
- iOS 开发中null 与<null>的处理
- iOS开发中(null)与<null>的处理
- <<ASP模板下载指南>>V3.0发布[Build 20141017
- <HTML5程序开发范例宝典(韩旭著)>读书笔记之渐变背景
- <转>如何将Chrome变成开发利器,开发者们在用这些插件
- Serverless 框架 OpenWhisk 开发指南:使用 Node.js 编写 hello, world
- 杭州_大数据的<Java/Hbase+C>云平台开发技术
- Android开发-API指南-<supports-gl-texture>
- Android开发-API指南-<uses-library>
- <转>iPhone开发的门槛
- <转>阅读优秀代码是提高开发人员修为的一种捷径
- <7.22>Android开发 补充知识点
- web开发---给<td>添加超链接
- <转>Hadoop2的HA安装(high availability):JournalNode+ zookeeper