node.js下LDAP查询实例分享
2015-09-30 10:37
916 查看
目标:
从一个LDAP Server获取uid=kxh的用户数据
LDAP地址为:https://www.jb51.net/article/ldap:/10.233.21.116:389
在工程根目录中,先npm一个LDAP的访问库ldpajs
npm install ldapjs
在工程根目录中,创建一个app.js
var ldap = require("ldapjs"); //创建LDAP client,把服务器url传入 var client = ldap.createClient({ url: 'ldap://10.203.24.216:389' }); //创建LDAP查询选项 //filter的作用就是相当于SQL的条件 var opts = { filter: '(uid=kxh)', //查询条件过滤器,查找uid=kxh的用户节点 scope: 'sub', //查询范围 timeLimit: 500 //查询超时 }; //将client绑定LDAP Server //第一个参数:是用户,必须是从根节点到用户节点的全路径 //第二个参数:用户密码 client.bind('uid=supbind,cn=users,dc=tiger,dc=com', '123456', function (err, res1) { //开始查询 //第一个参数:查询基础路径,代表在查询用户信心将在这个路径下进行,这个路径是由根节开始 //第二个参数:查询选项 client.search('DC=tiger,DC=com', opts, function (err, res2) { //查询结果事件响应 res2.on('searchEntry', function (entry) { //获取查询的对象 var user = entry.object; var userText = JSON.stringify(user,null,2); console.log(userText); }); res2.on('searchReference', function(referral) { console.log('referral: ' + referral.uris.join()); }); //查询错误事件 res2.on('error', function(err) { console.error('error: ' + err.message); //unbind操作,必须要做 client.unbind(); }); //查询结束 res2.on('end', function(result) { console.log('search status: ' + result.status); //unbind操作,必须要做 client.unbind(); }); }); });
您可能感兴趣的文章:
相关文章推荐
- 使用 HTTP 上传 G 级的文件之 Node.js 版本
- Node.js压缩web项目中的js,css和图片
- 异步流程控制:7 行代码学会 co 模块
- node.js中的fs.mkdir方法使用说明
- 为什么Node.js会这么火呢?Node.js流行的原因
- 究竟什么是Node.js?Node.js有什么好处?
- node.js中的http.response.removeHeader方法使用说明
- 浅析Node.js查找字符串功能
- Node.js中require的工作原理浅析
- 运行Node.js的IIS扩展iisnode安装配置笔记
- 使用npm发布Node.JS程序包教程
- node.js中的fs.symlinkSync方法使用说明
- Node.js中的流(Stream)介绍
- 使用node.js 获取客户端信息代码分享
- Windows8下搭建Node.js开发环境教程
- Node.js实现的简易网页抓取功能示例
- Node.js中HTTP模块与事件模块详解
- Node.js中child_process实现多进程
- Node.js中的process.nextTick使用实例
- 优化Node.js Web应用运行速度的10个技巧