0

一般来说,我是 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) 但我正在运行的脚本从未“正式”结束,因此导致我不得不执行键盘中断。

此外,我尝试使用 res.end() 但被告知这不是一个函数。有什么我完全想念的吗?谢谢!

4

2 回答 2

0

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

请参阅: 如何在 Node.js 中退出

于 2018-07-10T08:44:20.807 回答
0

尝试为您的 res.on('end'...)

res.on('end', (result => {
    console.log('status: ' + result.status);
    client.destroy();
});
于 2021-06-19T00:31:00.343 回答