初識Nodejs

Nodejs主要應(yīng)用領(lǐng)域

1>? RESTFul API

2>? 實時通信:如消息推送等

3>? 高并發(fā)

4> I/O阻塞

NodeJS 的優(yōu)勢

1. 性能高? (高出php86倍) ?? 2. 跟前臺JS配合方便

3. 便于前端學(xué)習(xí) ? ?

異步流程控制對象 async

1. 串行無關(guān)聯(lián) assync.series

2. 并行無關(guān)聯(lián) ? async.parallel

3. 串行有關(guān)聯(lián) waterfall

事件監(jiān)聽

event.EventEmitter

? ? 1>emitter.addListener(event,listenner)==on //添加監(jiān)聽

? ? 2>emitter.on(event,listener)

? ? 3>emitter.once(event,listener)? //一次性的監(jiān)聽器

? ? 4>emitter.removeListener(event,listener)? //刪除指定監(jiān)聽

? ? 5>emitter.removeAllListeners([event])? //刪除所有監(jiān)聽

? ? 6>emitter.setMaxListener(n)? //設(shè)置最大監(jiān)聽數(shù) 0:無限制 ,超出10個 EventEmitter將打印警告信息

? ? 7>emitter.listeners(event)? //返回特定事件的監(jiān)聽器集合

? ? 8>emitter.emit(event,[arg1],[arg2],[...]) //順序執(zhí)行每個事件監(jiān)聽器

node 框架

express,koa

從瀏覽器輸入url到加載出界面,期間經(jīng)歷了什么?

1. Chrome 搜索自身的DNS

2. 搜索操作系統(tǒng)自身的DNS緩存(瀏覽器沒有找到緩存或者緩存已經(jīng)失效)

3. 讀取本地的HOST文件

4. 瀏覽器發(fā)起一個DNS的一個系統(tǒng)調(diào)用

5. 瀏覽器獲得域名對應(yīng)的IP地址后,發(fā)起HTTP三次握手

6.TCP/IP連接建立,瀏覽器開始向服務(wù)器發(fā)送http請求。

7. 服務(wù)器接收請求,根據(jù)參數(shù)把處理后的結(jié)果返回給瀏覽器。

8. 瀏覽器拿到返回結(jié)果,解析并渲染頁面

Node 解析參數(shù)

一. GET

var rdata = url.parse(req.url,true) //true 表示解析query字段的字符串為對象

二. POST

var post = '';

req.on('data',function(chunk){

? ? post += chunk;

})

req.on('end',function(){

? ? ? post = querystring.parse(post);

})


????

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容