2016-09-07 79 views
3

我是一個初學者的Node.js和我做了如下示例代碼的項目,如何運行的node.js

var http = require("http"); 
    var server = http.createServer(function(request,response) { 
    response.writeHead(200, { 
    "content-Type" : "text/html" 
    }); 
    response.end("Hello again"); 
}).listen(8888); 

,當我在eclise運行此文件作爲運行--- --->節點項目 當我用url localhost:8888打開瀏覽器時,它顯示網頁不可用。你們可以幫我找出答案嗎?我已經在我的系統和npm上安裝了node.js。我錯過了什麼?

+0

'})listent(8888);'我想你的意思'listen' –

+0

@NJDawson我再次糾正了錯誤,它顯示找不到網頁 – user3189828

回答

0

您從不接受「請求」變量。以下是你正在嘗試的工作版本。

var http = require("http"); 
var server = http.createServer(); 

server.on('request', function(request, response) { 
    response.writeHead(200, { 
    "content-Type" : "text/html" 
    }); 
    response.end("Hello again"); 
}); 

server.listen(8888); 
+0

除了他沒有:檢查文檔的createServer] (https://nodejs.org/api/http.html#http_http_createserver_requestlistener)。第一個參數可以是請求處理程序。 – Gant

+0

@Gant我沒有檢查文檔,但錯過了,他沒有定義接收「請求」的參數可能更準確,然後 –

+0

很好的簡約編輯 – Gant

2

。在你的請求回調的範圍沒有requestresponse對象。您需要將它們定義爲回調函數的參數。

var http = require("http"); 
var server = http.createServer(function(request, response) { 
    response.writeHead(200, { 
    "content-Type" : "text/html" 
    }); 
    response.end("Hello again"); 
}).listen(8888); 

儘管你肯定會得到一個錯誤 - 你確定你的IDE設置正確嗎?

+0

我剛剛在eclipse上安裝了enide插件 – user3189828

0

請問您能告訴我您在哪找到response對象? http.createServer返回一個具有兩個參數的回調函數。它們是responserequest。響應用於向客戶端發送數據/信息並請求用於從客戶端獲取數據/信息。所以在你的http.createServer回調函數中添加響應和請求參數。之後在回調函數中使用response對象。喜歡這個。 。

var http = require("http"); 
var server = http.createServer(function(request, response) { 
    response.writeHead(200, { 
     "content-Type" : "text/html" 
    }); 
    response.end("Hello again"); 
}).listen(8888);