http://nodejs.org/api/all.html#all_https
这篇文档的目的是从参考和概念的角度来描述理解nodejs的api,每个章节描述了一个内置的模块或者更高等的概念
通过本文档,你将会发现每个章节的指示。Nodejs的api一直在稍微的更改。并且它的成熟确定的板块比其他的更加可靠。其中一些是被证明的,费城可靠
他们看上去并不像经常被更改的。另一些标记着新和实验性的,是有危险的,在进程中需要重定义
这些功能被认为是有问题的,并且被有计划的更改,不要用他们,用这些功能会引起一些警告,逆向的兼容性是不被希望的
这些功能最近被介绍,并且可能在未来的版本改动或者移除,请尝试他们并反馈,如果他们的用例对你很重要,请告诉node的核心团队
这些api正在不断的积累的过程中,但是并没有足够的事实证实他们足够大的稳定,如果他们是合理的那么向后将会兼容他们
这些api已经被证实是满意的,但是清理一些潜在的小代码可能会造成一些小幅度的修改,向后兼容是可以保证的
这些api在产品中已经被详尽的测试,并且不出现大的问题不会被更改
除非极少的bug被发现,这些代码几乎不会改变。请不要在这些代码中更改,他们不会被修改
每一个html文件在markdown都有一个拥有一致数据的json文件
用node编写的webserver示例将会输出”Hello World”
//申请一个http的变量
varhttp
=require('http');
//
创建服务器
http
.createServer(function(
request
,response
){//回调函数
response
.writeHead(200,{'Content-Type':
'text/plain'});
response
.end('Hello World\n');//
}).listen(8124);//端口号为8124
//
在控制台输出
console
.log('Server running at http://127.0.0.1:8124/');
运行这个服务,将这段代码写入example.js,并且用node程序执行
这些对象在所有的模块中都是可以用的,他们中的一些并不是在全局的范围内而是在一些模块中,他们将会被标记出来
经常用来打印到标准输出或者错误输出,请查看console章节
请求模块,查看modules章节,require并不是一个全局的却是每个模块都本地化的
用本地的require机械的寻找并本地化一个模块,并不是加载这个模块,仅仅返回这个解析的文件名
模块在被请求的时候将会存储在这个对象中,通过从这个对象中删除一个键值,下一个请求将会重新加载这个模块
在以前被弃用,这个列表用来不是javascript模块通过编译命令加载进入node,然而,在实践中,有很多更好的方法做到这一点,比如加载一些其他的node程序模块,或者编译他们成javascript、
自从这个模块被锁上之后,这个功能不会被删除,然而他可能会导致很多不易发现的bug而且复杂的东西最好不要用
该文件名的代码已经被执行过,这是解决这个代码文件的确定路径,对于一个主程序来说,这不是必须的,这个文件名一般用在命令行中,在模块中的变量是那个模块文件的路径
_filename并不是一个全聚德但是是每一个模块都本地化的
引用当前的模块,特别的,module.exports和exprts对象是一样的。Module不是全局的,而是每个模块实例化得
一个在所有正确的模块实例之间共享并且可以获取require的module.exports的引用,查看module系统文档获取更加详细的信息
运行回调函数cb 在ms毫秒之后,确切的延迟由外部的环境确定比如系统延迟保证和系统加载
延迟时间必须在1-2147 483647之间,如果这个值不在这个范围内,他将会自动默认1,
停止由setTimeout()创建的时间值,回调函数将不会被调用
停止由setInterval()创建的定时器,回调函数将不会被调用,这个定时器函数是全局变量,请查看timer章节