var http = require('http'); //在createServer方法中可以不寫回調函數,監聽‘request’即可 //server.on('request',function (request, respone) {}) var server = http.createServer(function (request, response) { //... response.writeHead(200,{'Content-Type':'text/html;charset=utf-8'}); response.write('Hello Node'); response.end(''); }).listen(3000); //server.listen(port,[host],[backlog],[callback]) //backlog:一個整數值,用於指定位於等待隊列中的客戶端連接的最大數量,一旦超過此數量,HTTP服務器將拒絕新的客戶端連接,默認爲511 //當服務器指定了需要監聽的端口號和地址後,觸發‘listening’事件, // 可以直接在listen方法中調用callback函數,也可以如下方所示,給服務器添加監聽事件 server.on('listening',function () { console.log('服務器開始監聽'); //close方法可以關閉服務器,放服務器被關閉時觸發close事件 //可以直接在close方法中添加回調函數,也可以添加close的監聽事件 //server.close(); }) //close的監聽事件 server.on('close',function () { console.log('服務器關閉'); }) //監聽服務器的error事件 server.on('error',function (e) { if(e.code == 'EADDRINUSE') console.log('服務器端口已被佔用') }) //服務器連接上客戶端時,觸發connection事件 server.on('connection',function () { console.log('客戶端連接已建立') }) //設置服務器超時時間 server.setTimeout(60*1000,function (socket) { //也可以不寫回調函數,監聽‘timeout‘時間即可 console.log('服務器超時'); //console.log(socket); })