Ldapjs在一段时间后连接超时
ldapjs connection times out after certain period of time
我在使用LDAPjs的LDAP存储库中有一些关于searchEntry的问题。我不是很熟悉LDAP,因此我可能在客户机实现中遗漏了一些东西。问题是,经过一段时间后,LDAP服务器没有响应,没有调用任何回调。
const ldapClient = ldap.createClient({
url: 'ldap://some.ldap.server',
timeout: 3000,
connectTimeout: 6000
});
ldapClient.search('c=XX', opts, (err, res) => {
if (err) {
ldapClient.unbind(function(err) {
if (err) {
console.log(err)
}
});
return next(null);
}
res.once('searchEntry', (entry) => {
ldapClient.unbind(function(err) {
if (err) {
console.log(err)
}
});
return next(entry);
});
res.on('error', (error) => {
ldapClient.unbind(function(err) {
if (err) {
console.log(err)
}
});
return next(null, new Error(error.message));
});
});
在创建LDAP客户端时将reconnect
标志传递为true
,不要像您那样解除对它的绑定。我想这也阻碍了重新连接。只有在搜索成功后才能解除绑定。
这段代码为我工作:(值当然是假的)
var ldap = require('ldapjs');
var tlsOptions = {
host: 'example.com',
port: '636',
ca: [fs.readFileSync('./path/to/cert.pem')]
};
var client = ldap.createClient({
url: 'ldaps://example.com:636',
reconnect: true
tlsOptions: tlsOptions
});
client.bind(username, password, function (err) {
if (err) {
console.log('Error occurred while binding');
} else {
var base = 'cn=admin,dc=example,dc=com';
var search_options = {
scope: 'sub',
filter: '(&(objectClass=*)(CN=' + username + '))',
attrs: 'attrs'
};
client.search(base, search_options, function (err, res) {
if (err) {
console.log('Error occurred while ldap search');
} else {
res.on('searchEntry', function (entry) {
console.log('Entry', JSON.stringify(entry.object));
});
res.on('searchReference', function (referral) {
console.log('Referral', referral);
});
res.on('error', function (err) {
console.log('Error is', err);
});
res.on('end', function (result) {
console.log('Result is', result);
});
}
});
}
});
相关文章:
- 使用优化器在慢速连接上加载main.js时需要js超时
- 如何在自动重新连接超时后重新连接socket.io客户端
- AngularjS到ElasticSearch的连接超时
- 节点.js浏览器响应:连接超时
- 加载资源时出现 OpenTok JS 连接超时问题
- 在 Node 中,创建具有“等待连接”超时的 http 连接的好方法是什么
- 节点.js npm 安装错误连接超时
- NodeJS+Mongoose连接超时
- 如何解决“;连接超时”;错误
- socket.io事件重新连接超时
- Strophe.js客户端连接到服务器,断开连接/超时
- Javascript:如何检测facebook连接超时错误
- WebApi Catch连接超时错误
- 插入数据库(node.js)时Mysql连接超时
- Html5视频慢速连接超时
- Express.js 4.12连接超时上限
- Node.js无法加载网页,连接超时
- 在node.js中运行应用程序时出现连接超时错误
- Ldapjs在一段时间后连接超时
- 仅针对一个特定函数分析连接超时