nodejs建立web服務器hello world程序

Node.js 最主要的應用是服務器序。html

設計Node.js 的一個主要目的是提供高度可擴展的服務器環境。這是咱們在
本章開篇介紹過的Node 和V8 引擎有所區別的地方。Node 除了用V8 引擎來解析
JavaScript 外,還提供了高度優化的應用庫,用來提升服務器效率。好比說,HTTP
模塊是專爲快速非阻塞式HTTP 服務器而用C 從新編寫的。讓咱們看一下Node 採
用HTTP 服務器的「Hello World」經典例子node

var http=require('http');//引入核心HTTP模塊

/*建立服務器*/
var server=http.createServer(function(req,res){
    res.writeHead(200,{"Content-type":'text/html'});
    res.end('hello world');
});

/*監聽IP以及端口*/
server.listen(8124,'127.0.0.1',function(){
    console.log('服務器建立成成功:127.0.0.1:8124');
});

運行代碼以下所示服務器

ZXD@ZXD-PC /K/work/learn/nodejs/cvs01
$ node app
服務器建立成成功:127.0.0.1:8124app

這個示例代碼首先經過require 方法把HTTP 庫包含到程序中來。有許多語言都有
包含其餘庫這一方法,Node 用的是CommonJS 模塊風格。函數

當前須要瞭解的是,HTTP 庫所具備的功能已經賦給了http 對象。
下一步,咱們須要一個HTTP 服務器。PHP 等其餘語言須要在相似Apache 這樣的
服務器中運行,而Node 和它們不一樣,由於Node 自己就是Web 服務器。但這一樣
意味着咱們須要先建立該服務器。下一行代碼調用HTTP 模塊的一個工廠模式方法
(createServer)來建立新的HTTP 服務器。新建立的HTTP 服務器並無賦值給
任何變量,它只會成爲存活在全局範圍內的匿名對象。咱們能夠經過鏈式調用來初
始化服務器,並告訴它監聽在8124 端口。
當調用createServer 的時候,咱們傳了一個匿名函數做爲參數。此函數綁定在
新建立服務器的事件監聽器上進行request 事件處理。消息事件是JavaScript 和
Node 的核心。在這個例子中,每當一個新的訪問請求到達Web 服務器,它都將調
用咱們指定的函數方法來處理。咱們稱這類方法爲回調(callback)。由於每當一個
事件發生時,咱們將回調監聽此事件的全部函數。優化

相關文章
相關標籤/搜索