天天看點

nodejs之HTTP核心子產品建構簡單伺服器

nodejs之HTTP核心子產品

在vscod中打開js檔案,右鍵js檔案,在內建終端中打開。

nodejs之HTTP核心子產品建構簡單伺服器
nodejs之HTTP核心子產品建構簡單伺服器
// 1.加載http核心子產品
var http = require('http');

// 2.使用http.createServer()建立一個web伺服器
var server = http.createServer();

// 3.伺服器要做的事兒
// 提供服務:對資料服務
// 發請求
//  接收請求
//  處理請求
//  回報(發送響應)
//  當用戶端請求過來,就會自動觸發伺服器的request請求事件,然後執行第二個參數:回調處理函數
server.on('request',function(){
    console.log('收到客戶的請求了')
})

// 4.綁定端口号,啟動服務
server.listen(3000,function(){
    console.log("伺服器啟動成功。可以通過http:/1227.0.0.3000/ 來進行通路");
})      

例如:一個簡單點的建立通路

var http = require('http');
var server = http.createServer();
server.on('request',function(){
    console.log("收到用戶端請求了")
})
server.listen(3000,function(){
    console.log("伺服器啟動成功。可以通過http://127.0.0.1:3000/ 來進行通路");
})      
nodejs之HTTP核心子產品建構簡單伺服器

通過浏覽器再來請求這個伺服器,但這都是伺服器在自言自語

nodejs之HTTP核心子產品建構簡單伺服器
nodejs之HTTP核心子產品建構簡單伺服器

有點處理能力的伺服器

var http = require('http');
var server = http.createServer();
// request 請求事件處理函數,需要接受兩個參數
    // Request請求對象
        // 請求對象可以用來擷取用戶端的一些資訊,例如請求路徑.預設的請求路徑是/
    // Response 響應對象
        // 響應對象可以用來給用戶端發送響應資訊
server.on('request',function(request,response){
    //response對象有一個方法:write可以給用戶端發送響應資料
    // write可以使用多次,但是需要end來結束響應。否則用戶端一直會去響應
    if(request.url=='/'){
        response.write("index");
        response.end();
    }
})
server.listen(3000,function(){
    console.log("伺服器啟動成功。可以通過http://127.0.0.1:3000/ 來進行通路");
})      
nodejs之HTTP核心子產品建構簡單伺服器

如果再有:

if(request.url=='/login'){
        response.write("log in qq");
        response.end();
    }      
nodejs之HTTP核心子產品建構簡單伺服器
var http = require('http');

var server = http.createServer();
// request 請求事件處理函數,需要接受兩個參數
    // Request請求對象
        // 請求對象可以用來擷取用戶端的一些資訊,例如請求路徑.預設的請求路徑是/
    // Response 響應對象
        // 響應對象可以用來給用戶端發送響應資訊
server.on('request',function(request,response){
    //response對象有一個方法:write可以給用戶端發送響應資料
    // write可以使用多次,但是需要end來結束響應。否則用戶端一直會去響應
    if(request.url=='/'){
        response.write("index");
        response.end();
    }
    if(request.url=='/login'){
        response.write("log in qq");
        response.end();
    }
   
})
server.listen(3000,function(){
    console.log("伺服器啟動成功。可以通過http://127.0.0.1:3000/ 來進行通路");
})      

繼續閱讀