當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Node.js http.server.setTimeout()用法及代碼示例

http.server.setTimeout()是HTTP模塊中Server類的內置應用程序編程接口,用於設置套接字的超時值。

用法:

server.setTimeout([msecs][, callback])

參數:此方法以毫秒為單位獲取套接字超時值。

返回值:此方法隻返回回調函數以進行進一步操作。

示例1:Filename:index.js



Javascript

// Node.js program to demonstrate the   
// server.setTimeout() APi 
    
// Importing http module  
var http = require('http');  
    
// Setting up PORT  
const PORT = process.env.PORT || 3000;  
    
// Creating http Server  
var httpServer = http.createServer( 
  function(request, response){  
  
  // Getting the reference of the  
  // underlying socket object 
  // by using socket API 
  const value = response.socket; 
    
  // Display result 
  // by using end() api 
  response.end( "socket buffersize:" 
      + value.bufferSize, 'utf8', () => {  
      console.log("Displaying the result...");  
  });  
});  
    
// Listening to http Server  
// by using listen() api 
httpServer.listen(PORT, () => {  
    console.log( 
    "Server is running at port 3000...");  
}); 
  
httpServer.setTimeout(3000,()=>{ 
  
  console.log( 
    "Socket is destroyed due to timeout") 
  
    // Closing server  
    // by using close() api 
    httpServer.close(()=>{ 
        console.log("Server is closed") 
    }) 
})

使用以下命令運行index.js文件:

node index.js

控製台輸出:

Server is running at port 3000...
Displaying the result...
Displaying the result...
Socket is destroyed due to timeout
Socket is destroyed due to timeout
Server is closed
Server is closed

瀏覽器輸出:在瀏覽器的搜索欄中粘貼本地主機地址http://localhost:3000 /。

socket buffersize:0

示例2:Filename:index.js

Javascript

// Node.js program to demonstrate the   
// server.setTimeout() APi 
    
// Importing http module  
var http = require('http');  
  
// Request and response handler  
const http2Handlers = (request, response) => {  
    
  // Getting the reference of the  
  // underlying socket object 
  // by using socket API 
  const value = response.socket; 
    
  // Display result 
  // by using end() api 
  response.end( "socket local address:" 
      + value.localAddress, 'utf8', () => {  
      console.log("Displaying the result...");  
  }); 
  };  
    
// Listening to http Server  
// by using listen() api 
var httpServer = http.createServer( 
    http2Handlers).listen(3000, () => {  
    console.log("Server is running at port 3000...");  
});  
  
httpServer.setTimeout(3000,()=>{ 
    console.log( 
    "Socket is destroyed due to timeout") 
    
      // Closing server  
      // by using close() api 
      httpServer.close(()=>{ 
          console.log("Server is closed") 
      }) 
    })

使用以下命令運行index.js文件:

node index.js

控製台輸出:

Server is running at port 3000...
Displaying the result...
Displaying the result...
Socket is destroyed due to timeout
Socket is destroyed due to timeout
Server is closed
Server is closed

瀏覽器輸出:在瀏覽器的搜索欄中粘貼本地主機地址http://localhost:3000 /。

socket local address:::1

參考:https://nodejs.org/dist/latest-v12.x/docs/api/http.html#http_server_settimeout_msecs_callback

相關用法


注:本文由純淨天空篩選整理自RohitPrasad3大神的英文原創作品 Node.js http.server.setTimeout() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。