首页 > 解决方案 > Node.js 使用带有 express 框架的 setKeepAlive()

问题描述

我想在我的应用程序中使用 socket.setKeepAlive() 。

这是使用此功能的示例:

var net  = require('net');
var server = net.createServer(function(socket){
    socket.setKeepAlive(true,60000);

还有另一种使用此功能的正确方法:

var socket = net.connect(opts, function(){
    // 'connect' listener
    socket.setKeepAlive(true, 5000);
    socket.write("hello");
});

由于所有这些选项都使用 vanilla Node.js,我如何将这个功能与 express 框架一起使用?

在快递中,我不包括该net模块。相反,我使用这个:

var express    = require('express');
var app        = express();

标签: node.jssocketsexpress

解决方案


基于这篇文章:

https://github.com/expressjs/express/issues/3556

您可以尝试使用这个快速中间件:

var express = require('express')
var app = express()

app.use(function (req, res, next) {
  req.socket.setKeepAlive()
  next()
})

推荐阅读