Node.js的HTTP与事件初步介绍&如何查看API(入门篇)
接着第一篇来说,当然,同样约定下面简称为Node(个人认为比较标准的说法),标题用node.js主要是为了方便阅读。同样,大牛可以略过这篇文章啦!现在,主要说3个问题:(1)接着第一篇介绍完Http其他部分(2)事件模型的介绍(3)如何查看API 文档.
首先感谢下网友hellostory,修改下上一篇的程序的bug。
?
一、修改前一篇的程序bug ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
?
二、接着说HTTP其他部分 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
因为HTTP是Node的核心模块,因此,接着上一篇,把HTTP模块讲完。
1、 http.ClientRequest类。
可以看到,该类具有5个事件(实现接口的事件,暂且不说)、6个方法。那么我们从字面意思就可以看出是“客户端请求”的意思。但是我们需要了解以下几点:
该类的实例是在http.request中创建并返回的,也就是说,var req = http.request(options, function(res){});req就是该类对象。那么如何来使用这些方法和事件呢,来一段程序,就明白了。
- Class: http.ClientRequest
- Event 'response'
- Event: 'socket'
- Event: 'connect'
- Event: 'upgrade'
- Event: 'continue'
- request.write(chunk, [encoding])
- request.end([data], [encoding])
- request.abort()
- request.setTimeout(timeout, [callback])
- request.setNoDelay([noDelay])
- request.setSocketKeepAlive([enable], [initialDelay])
首先,发送一个请求,请求数据:
var http=require('http'); var options = { hostname: 'translate.google.cn', port: 80, path: '/', method: 'POST' }; var req=http.request(options,function(response){ var str=''; response.on('data',function(data){ str=str+data; }); response.on('end',function(){ console.log(str); }); }); req.on('error', func