第一個nodejs應用

應用這個詞很火,哪里都在用。這里的nodejs應用其實是一個站點,準確的說是運行在本地的一個小小的Http站點。但是nodejs開發主要還是集中在少數的幾個核心功能上,而不是那種動輒幾千幾萬個文件,支撐多少并發多少功能的這種大型站點。所以nodejs開發的這些小型http站點也叫做應用。當然nodejs是可以做這種大型的站點的。

我們這里要做的示例應用主要是讓剛接觸的同學明白使用nodejs開發一個應用是多么的簡單。

在開始以前首先看看我們的應用會有哪幾部分:

  • 引入模塊,nodejs使用require關鍵字來引入一個模塊。一個模塊就是已經寫好的一個或一組文件。通過require引入之后就可以直接在我們的文件中使用這個模塊完成的功能。
  • 創建一個server,這個server運行起來以后就可以響應用戶的http請求,并把response發回給用戶。
  • 請求(request)和響應(response),上面說的server會接受用戶的請求,看看用戶需要什么。之后給予用戶對應的響應。用戶會在瀏覽器中看到響應內容。

創建nodejs應用

下面正式開始創建nodejs應用。一下代碼會保存在一個index.js的文件中。

一、引入需要的模塊

使用require關鍵字來引入http模塊,同時把返回值賦值給http變量。

var http = require("http");

二、創建server

這一步創建一個可以響應用戶請求的server,這個server監聽3456端口:

var http = require("http");

http.createServer(function(request, response){
    // 1
    response.writeHead(200, {'Content-Type': 'text/plain'});
    // 2
    response.end('Hello World!');
}).listen(3456);
// 3
console.log("Server is running at http://localhost:3456");

下面分別解釋一下:

  1. 這一句是返回的HTTP頭,HTTP Status: 200表示用戶請求很成功,OK了。最常見到的是響應是HTTP Status 400,頁面不存在。這就表示用戶訪問出錯了。Content-Type:text/plain,表明返回的內容是文本。
  2. 上面說明的語句是返回一個頭,現在的語句是返回一個體(body)。這個的內容就是:”Hello World!”,全世界最著名的程序用文本內容。
  3. 在Console里輸入內容:“Server is running at http://localhost:3456”。
    上面的代碼就可以創建一個HTTP server,并可以監聽用戶在瀏覽器里發出的請求,發回響應內容。

運行HTTP server:

$node index.js

通過這個命令就可以運行起來server。同時你會看到有這樣的輸出:

Server is running at http://localhost:3456

三、測試

測試一下我們的server吧。打開瀏覽器,并在地址欄里輸入* http://localhost:3456*,按下回車你就會看到結果了。

first app

YEAH,你的第一個nodejs應用已經運行起來了!

stay tuned to my next episode!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,837評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,820評論 25 708
  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測試 ...
    KeKeMars閱讀 6,366評論 0 6
  • Nginx簡介 解決基于進程模型產生的C10K問題,請求時即使無狀態連接如web服務都無法達到并發響應量級一萬的現...
    魏鎮坪閱讀 2,029評論 0 9
  • 本來計劃兩天更新一篇文章,但是到目前為止,沒有真正堅持過這個計劃;本來想每天10點睡覺,5點起床的,但是到目前為止...
    思考方法閱讀 387評論 0 0