Ldapjs搜索似乎没有结束

时间:2018-06-14 13:15:18

标签: javascript node.js ldap ldapjs

我是ldapjs和ldap的新手。我目前有以下代码:

var search = client.search(base, opts, function(err, res) {
    assert.ifError(err);

    res.on('searchEntry', function(entry) {
      console.log('entry: ' + JSON.stringify(entry.object));
    });
    res.on('searchReference', function(referral) {
      console.log('referral: ' + referral.uris.join());
    });
    res.on('error', function(err) {
      console.error('error: ' + err.message);
    });
    res.on('end', function(result) {
      console.log('status: ' + result.status);
    });
});

我的搜索正确,并找到所需的一切。我的问题是它确实成功地获得了res.on(' end')并打印出状态代码(0)但我正在运行的脚本从未正式运行#34;结束因此导致我必须执行键盘中断。

另外我尝试使用res.end(),但被告知这不是一个功能。有什么我完全错过的吗?谢谢!

2 个答案:

答案 0 :(得分:0)

我认为这是更多的nodejs问题,而不是ldapjs。 您可以在“结束”事件上添加退出程序。

请参阅: How to exit in Node.js

答案 1 :(得分:0)

尝试为您的 res.on('end'...) 执行此操作

res.on('end', (result => {
    console.log('status: ' + result.status);
    client.destroy();
});