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
相关用法
- Node.js console.timeLog()用法及代码示例
- Node.js fs.fsyncSync()用法及代码示例
- Node.js process.nextTick()用法及代码示例
- Node.js GM charcoal()用法及代码示例
- Node.js GM blur()用法及代码示例
- Node.js GM sharpen()用法及代码示例
- Node.js GM drawLine()用法及代码示例
- Node.js GM drawArc()用法及代码示例
- Node.js GM drawPolyline()用法及代码示例
- Node.js GM drawBezier()用法及代码示例
- Node.js GM drawCircle()用法及代码示例
注:本文由纯净天空筛选整理自RohitPrasad3大神的英文原创作品 Node.js http.server.setTimeout() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。