📜  Node.js http.server.keepAliveTimeout 属性

📅  最后修改于: 2022-05-13 01:56:46.117000             🧑  作者: Mango

Node.js http.server.keepAliveTimeout 属性

http.server.keepAliveTimeout是 http 模块中 Server 类的内置应用程序编程接口,用于获取服务器等待额外传入数据所需的非活动毫秒数。

句法:

server.keepAliveTimeout

参数:此 Api 不接受任何参数作为参数。

返回值:此方法返回服务器等待额外传入数据所需的非活动毫秒数。

示例 1:文件名:index.js

Javascript
// Node.js program to demonstrate the  
// server.keepAliveTimeout property
    
// 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..."); 
  
      // Closing server 
      // by using close() api
      httpServer.close(()=>{
          console.log("server is closed")
      })
  }); 
}); 
    
// Listening to http Server 
// by using listen() api
httpServer.listen(PORT, () => { 
    console.log("Server is running at port 3000..."); 
});
  
// Getting keep alive timeout value
// by using keepAliveTimeout api
const v = httpServer.keepAliveTimeout
  
// Display the result
console.log('keep alive time out value :-' + v)


Javascript
// Node.js program to demonstrate the  
// server.keepAliveTimeout property
    
// 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..."); 
  
      // Closing server 
      // by using close() api
      httpServer.close(()=>{
          console.log("server is closed")
      })
  });
}; 
    
// Listening to http Server 
// by using listen() api
var httpServer = http.createServer(
    http2Handlers).listen(3000, () => { 
    console.log("Server is running at port 3000..."); 
}); 
  
// Getting keep alive timeout value
// by using keepAliveTimeout property
const v = httpServer.keepAliveTimeout
  
// Display the result
console.log('keep alive time out value :-' + v)


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

node index.js

控制台输出:

keep alive time out value :-5000
Server is running at port 3000...
displaying the result...
displaying the result...
server is closed
server is closed

浏览器输出:将本地主机地址 http://localhost:3000/ 粘贴到浏览器的搜索栏中。

Socket buffersize : 0

示例 2:文件名:index.js

Javascript

// Node.js program to demonstrate the  
// server.keepAliveTimeout property
    
// 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..."); 
  
      // Closing server 
      // by using close() api
      httpServer.close(()=>{
          console.log("server is closed")
      })
  });
}; 
    
// Listening to http Server 
// by using listen() api
var httpServer = http.createServer(
    http2Handlers).listen(3000, () => { 
    console.log("Server is running at port 3000..."); 
}); 
  
// Getting keep alive timeout value
// by using keepAliveTimeout property
const v = httpServer.keepAliveTimeout
  
// Display the result
console.log('keep alive time out value :-' + v)

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

node index.js

控制台输出:

keep alive time out value :-5000
Server is running at port 3000...
displaying the result...
displaying the result...
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_keepalivetimeout