Sql server 使用mssql对查询结果进行流式处理

Sql server 使用mssql对查询结果进行流式处理,sql-server,node.js,express,Sql Server,Node.js,Express,我一直在尝试使用npm上的mssql包连接到SQL服务器并流式返回查询结果。问题在于流媒体。我试着像这样遵循API文档: 'use strict'; const express = require('express'); const app = express(); const sql = require('mssql'); const sts = require('string-to-stream'); let connectStr1 = "***"; let que

我一直在尝试使用npm上的
mssql
包连接到SQL服务器并流式返回查询结果。问题在于流媒体。我试着像这样遵循API文档:

'use strict';
const express = require('express');
const app     = express();
const sql     = require('mssql');
const sts     = require('string-to-stream');

let connectStr1 = "***";
let queryStr = "***";
app.get('/', (req, res) => {
    sql.connect(connectStr1)
    .then(() => {
        let request = new sql.Request();
        request.stream = true;
        request.query(queryStr);
        request
        .on('row', (row) => {
            sts(row).pipe(res);
        }).on('error', (err) => {
            res.end(JSON.stringify(err));
        }).on('finish', () => {
            res.end();
        });


    }).catch((err) => {
         res.end(JSON.stringify(err));
    });
});
app.listen(4000, () => console.log('Listening to port 4000'));
错误为

检测到可能的EventEmitter内存泄漏。添加了11个完成侦听器

接下来我试着

request.setMaxListener(Infinity)
但错误仍然存在

我的问题是为什么创建了这么多的侦听器?如何以正确的方式返回结果?提前谢谢