建立一個(gè) lesson2 項(xiàng)目,在其中編寫(xiě)代碼。
當(dāng)在瀏覽器中訪(fǎng)問(wèn) http://localhost:3000/?q=alsotang
時(shí),輸出 alsotang
的 md5 值,即bdd5e57b5c0040f9dc23d430846e68a3
。
訪(fǎng)問(wèn) http://localhost:3000/?q=alsotang
時(shí),輸出 alsotang
的 sha1 值,即e3c766d71667567e18f77869c65cd62f6a1b9ab9
。
臥槽,不寫(xiě) package.json 就寫(xiě)項(xiàng)目我覺(jué)得好不爽啊,所以這個(gè) lesson2 我就得跟大家介紹一下 package.json 這個(gè)文件的用法了。
簡(jiǎn)單說(shuō)來(lái)呢,這個(gè) package.json 文件就是定義了項(xiàng)目的各種元信息,包括項(xiàng)目的名稱(chēng),git repo 的地址,作者等等。最重要的是,其中定義了我們項(xiàng)目的依賴(lài),這樣這個(gè)項(xiàng)目在部署時(shí),我們就不必將 node_modules
目錄也上傳到服務(wù)器,服務(wù)器在拿到我們的項(xiàng)目時(shí),只需要執(zhí)行 npm install
,則 npm 會(huì)自動(dòng)讀取 package.json 中的依賴(lài)并安裝在項(xiàng)目的node_modules
下面,然后程序就可以在服務(wù)器上跑起來(lái)了。
本課程的每個(gè) lesson 里面的示例代碼都會(huì)帶上一份 package.json,大家可以去看看它的大概樣子。
我們來(lái)新建一個(gè) lesson2 項(xiàng)目,并生成一份它的 package.json。
$ mkdir lesson2 && cd lesson2
$ npm init
OK,這時(shí)會(huì)要求我們輸入一些信息,亂填就好了,反正這個(gè)地方也不用填依賴(lài)關(guān)系。
npm init
這個(gè)命令的作用就是幫我們互動(dòng)式地生成一份最簡(jiǎn)單的 package.json 文件,init
是 initialize
的意思,初始化。
當(dāng)亂填信息完畢之后,我們的目錄下就會(huì)有個(gè) package.json 文件了。
這時(shí)我們來(lái)安裝依賴(lài),這次的應(yīng)用,我們依賴(lài) express
和 utility
兩個(gè)模塊。
$ npm install express utility --save
這次的安裝命令與上節(jié)課的命令有兩點(diǎn)不同,一是沒(méi)有指定 registry,沒(méi)有指定的情況下,默認(rèn)從 npm 官方安裝,上次我們是從淘寶的源安裝的。二是多了個(gè) --save
參數(shù),這個(gè)參數(shù)的作用,就是會(huì)在你安裝依賴(lài)的同時(shí),自動(dòng)把這些依賴(lài)寫(xiě)入 package.json。命令執(zhí)行完成之后,查看 package.json,會(huì)發(fā)現(xiàn)多了一個(gè) dependencies
字段,如下圖:
這時(shí)查看 node_modules
目錄,會(huì)發(fā)現(xiàn)有兩個(gè)文件夾,分別是 express 和 utility
更多建議: