首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >变量LdapJS中的LDAP查询数据

变量LdapJS中的LDAP查询数据
EN

Stack Overflow用户
提问于 2018-05-02 09:57:45
回答 1查看 1.1K关注 0票数 1

我正在尝试从LDAP中获取数据,并且正在成功地获得数据,但它没有写入变量,所以在代码执行之后,我可以对数据进行一些检查。

代码语言:javascript
复制
var server = LdapJS.createClient({
    url: LdapConf.server.url,
    tlsOptions: LdapConf.server.tlsOptions
});
server.bind(LdapConf.server.bindDN, LdapConf.server.bindCredentials, function(err) {
    if (err) {
        return done(err);
    }
});
var SearchOtps = {
    filter: '(uid=' + username + ')',
    scope: 'one',
};


var UserSearch = server.search(LdapConf.server.searchBase, SearchOtps, function(err, res) {
    res.on('searchEntry', function(entry) {
        console.log('entry: ' + JSON.stringify(entry.object));
        return (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);
    });
});

console.log(UserSearch);

我只是不知道如何在等待LDAP搜索返回时停止进一步的代码执行。

代码语言:javascript
复制
Server Started
undefined
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-02 11:01:34

您可以执行一个函数,返回它的承诺。

代码语言:javascript
复制
function UserSearch(server,LdapConf, SearchOtps) {
  return new Promise(function(resolve,reject) {

    server.search(LdapConf.server.searchBase, SearchOtps, function(err, res) {
        res.on('searchEntry', function(entry) {
            console.log('entry: ' + JSON.stringify(entry.object));
            resolve(JSON.stringify(entry.object)));
        });
        res.on('searchReference', function(referral) {
            //console.log('referral: ' + referral.uris.join());
        });
        res.on('error', function(err) {
          reject()
        });
        res.on('end', function(result) {
          //console.log('status: ' + result.status);
        });
    });
  }
 }
 
 UserSearch(server,LdapConf, SearchOtps)
 .then(function(res) {
   console.log(res)
 })

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50131817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档