初識node

1、nodeJS的特點

  • 單線程:
    好處:是減少了內(nèi)存開銷屯烦;
    缺點:就是一個用戶造成了線程的崩潰,整個服務都崩潰了,其他人也崩潰了驻龟。
  • 非阻塞I/O
    不會傻等I/O語句結束甸箱,而會執(zhí)行后面的語句。
  • 事件驅動event-driven:不管是新用戶的請求迅脐,還是老用戶的I/O完成芍殖,都將以事件方式加入事件環(huán),等待調(diào)度谴蔑。

2豌骏、HTTP模塊

Node.js中,將很多的功能隐锭,劃分為了一個個mudule窃躲,大陸的書翻譯為模塊;這是因為钦睡,有一些程序需要使用fs功能(文件讀取功能)蒂窒,有一些不用的,所以為了效率荞怒,你用啥洒琢,你就require啥。

//這個案例簡單講解http模塊
//引用模塊
const http = require("http");
//創(chuàng)建一個服務器褐桌,回調(diào)函數(shù)表示接收到請求之后做的事情
const server = http.createServer(function(req,res){
    //req參數(shù)表示請求衰抑,res表示響應
    console.log("服務器接收到了請求" + req.url);
    res.writeHead(200,{"Content-Type":"text/html;charset=UTF-8"});
    //設置響應頭:文字編碼
    res.end();
});
//監(jiān)聽端口
server.listen(3000,"127.0.0.1");
  • req的作用:
    最關鍵的就是req.url屬性,表示用戶的請求URL地址荧嵌。所有的路由設計呛踊,都是通過req.url來實現(xiàn)的。
    我們比較關心的不是拿到URL啦撮,而是識別這個URL谭网。

識別URL,用到兩個新模塊赃春,第一個就是url模塊愉择,第二個就是querystring模塊

  • 字符串查詢,用querystring處理
  • 使用URL模塊

3聘鳞、模塊

  • node中的模塊分為三部分:
    1薄辅、系統(tǒng)自帶模塊
    2、自定義模塊:js文件和js文件之間有兩種合作的模式:
    • 某一個js文件中抠璃,提供了函數(shù)站楚,供別人使用。 只需要暴露函數(shù)就行了搏嗡; exports.msg=msg;
    • 某一個js文件窿春,描述了一個類拉一。 module.exports = People;
      3、第三方模塊
  • 我們可以使用文件夾來管理模塊旧乞,比如
    var bar = require("bar");
    那么Node.js將會去尋找node_modules目錄下的bar文件夾中的index.js去執(zhí)行蔚润。

每一個模塊文件夾中,推薦都寫一個package.json文件尺栖,這個文件的名字不能改嫡纠。node將自動讀取里面的配置。有一個main項延赌,就是入口文件:

{
      "name": "wwr",
      "version": "1.0.1",
      "main" : "app.js"
}

package.json文件除盏,要放到模塊文件夾的根目錄去。

  • 我們可以用package.json來管理依賴挫以。
    在cmd中者蠕,使用npm init可以初始化一個package.json文件,用回答問題的方式生成一個新的package.json文件掐松。
  • 這樣解決兩個問題
    1.我們的依賴包踱侣,可能在隨時更新,我們永遠想保持更新大磺,或者某持某一個版本抡句;
    2.項目越來越大的時候,給別人看的時候量没,沒有必要再次共享我們引用的第三方模塊玉转。
    別人使用我們的項目的時候,只需要npm install 即可安裝相應的模塊
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末殴蹄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子猾担,更是在濱河造成了極大的恐慌袭灯,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绑嘹,死亡現(xiàn)場離奇詭異稽荧,居然都是意外死亡,警方通過查閱死者的電腦和手機工腋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進店門姨丈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人擅腰,你說我怎么就攤上這事蟋恬。” “怎么了趁冈?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵歼争,是天一觀的道長拜马。 經(jīng)常有香客問我,道長沐绒,這世上最難降的妖魔是什么俩莽? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮乔遮,結果婚禮上扮超,老公的妹妹穿的比我還像新娘。我一直安慰自己蹋肮,他們只是感情好出刷,可當我...
    茶點故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著括尸,像睡著了一般巷蚪。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上濒翻,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天屁柏,我揣著相機與錄音,去河邊找鬼有送。 笑死淌喻,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的雀摘。 我是一名探鬼主播裸删,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼阵赠!你這毒婦竟也來了涯塔?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤清蚀,失蹤者是張志新(化名)和其女友劉穎匕荸,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體枷邪,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡榛搔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了东揣。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片践惑。...
    茶點故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖嘶卧,靈堂內(nèi)的尸體忽然破棺而出尔觉,到底是詐尸還是另有隱情,我是刑警寧澤脸候,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布穷娱,位于F島的核電站绑蔫,受9級特大地震影響,放射性物質發(fā)生泄漏泵额。R本人自食惡果不足惜配深,卻給世界環(huán)境...
    茶點故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望嫁盲。 院中可真熱鬧篓叶,春花似錦、人聲如沸羞秤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瘾蛋。三九已至俐镐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間哺哼,已是汗流浹背佩抹。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留取董,地道東北人棍苹。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像茵汰,于是被迫代替她去往敵國和親枢里。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,585評論 2 359

推薦閱讀更多精彩內(nèi)容