ldapjs-client-sync
基于node-ldapjs的Client API部分封装出Client API的同步方法,便于客户端逻辑的编写,避免回调地狱。
所有ldapjs-client-sync
的API及API参数都可参考node-ldapjs官方文档。
开发环境:Node >= 12.21.0
npm
安装
npm i ldapjs-client-sync --save
cnpm
安装
cnpm i ldapjs-client-sync --save
返回一个LDAP
实例,该实例为基于ldap.Client
进行封装,添加了同步的方法。下文中所有的ldap
都是指该LDAP
类的实例,并非ldapjs
中原生的ldap.Client
实例。
该实例用于调用connect()
方法。
示例:
const LDAP = require('ldapjs-client-sync');
const ldap = new LDAP();
连接服务器,该方法参数详见官方文档中ldap.createClient()
方法的参数
如果连接成功,将返回客户端对象,所有同步方法都在该客户端对象中。
示例:
const LDAP = require('ldapjs-client-sync');
const ldap = new LDAP(); // 创建ldap实例
// 连接服务器,获取客户端对象
const client = await ldap.connect({
url: ['ldap://127.0.0.1:1389', 'ldap://127.0.0.2:1389']
});
bind
的同步方法,参数详见官方文档-bind()方法
示例:
const LDAP = require('ldapjs-client-sync');
const ldap = new LDAP(); // 创建ldap实例
// 连接服务器,获取客户端对象
const client = await ldap.connect({
url: ['ldap://127.0.0.1:1389', 'ldap://127.0.0.2:1389']
});
// 绑定客户端到指定DN
await client.bindSync('cn=admin,dc=example,dc=org', 'my_password');
search
的同步方法,参数详见官方文档-search()方法
示例:
const LDAP = require('ldapjs-client-sync');
const ldap = new LDAP(); // 创建ldap实例
// 连接服务器,获取客户端对象
const client = await ldap.connect({
url: ['ldap://127.0.0.1:1389', 'ldap://127.0.0.2:1389']
});
// 绑定客户端到指定DN
await client.bindSync('cn=admin,dc=example,dc=org', 'my_password');
// 搜索指定DN的数据
const result = await client.searchSync('o=my_organization,dc=example,dc=org');
console.log(result.objects[0]);
add
的同步方法,参数详见官方文档-add()方法
del
的同步方法,参数详见官方文档-del()方法
modify
的同步方法,参数详见官方文档-modify()方法
modifyDN
的同步方法,参数详见官方文档-modifyDN()方法
starttls
的同步方法,参数详见官方文档-starttls()方法
unbind
的同步方法,参数详见官方文档-unbind()方法