node.js下LDAP查詢實(shí)例分享
目標(biāo):
從一個(gè)LDAP Server獲取uid=kxh的用戶數(shù)據(jù)
LDAP地址為:ldap://10.233.21.116:389
在工程根目錄中,先npm一個(gè)LDAP的訪問(wèn)庫(kù)ldpajs
npm install ldapjs
在工程根目錄中,創(chuàng)建一個(gè)app.js
var ldap = require("ldapjs");
//創(chuàng)建LDAP client,把服務(wù)器url傳入
var client = ldap.createClient({
url: 'ldap://10.203.24.216:389'
});
//創(chuàng)建LDAP查詢選項(xiàng)
//filter的作用就是相當(dāng)于SQL的條件
var opts = {
filter: '(uid=kxh)', //查詢條件過(guò)濾器,查找uid=kxh的用戶節(jié)點(diǎn)
scope: 'sub', //查詢范圍
timeLimit: 500 //查詢超時(shí)
};
//將client綁定LDAP Server
//第一個(gè)參數(shù):是用戶,必須是從根節(jié)點(diǎn)到用戶節(jié)點(diǎn)的全路徑
//第二個(gè)參數(shù):用戶密碼
client.bind('uid=supbind,cn=users,dc=tiger,dc=com', '123456', function (err, res1) {
//開(kāi)始查詢
//第一個(gè)參數(shù):查詢基礎(chǔ)路徑,代表在查詢用戶信心將在這個(gè)路徑下進(jìn)行,這個(gè)路徑是由根節(jié)開(kāi)始
//第二個(gè)參數(shù):查詢選項(xiàng)
client.search('DC=tiger,DC=com', opts, function (err, res2) {
//查詢結(jié)果事件響應(yīng)
res2.on('searchEntry', function (entry) {
//獲取查詢的對(duì)象
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());
});
//查詢錯(cuò)誤事件
res2.on('error', function(err) {
console.error('error: ' + err.message);
//unbind操作,必須要做
client.unbind();
});
//查詢結(jié)束
res2.on('end', function(result) {
console.log('search status: ' + result.status);
//unbind操作,必須要做
client.unbind();
});
});
});
- Node.js Sequelize如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫(xiě)分離
- Sequelize 常用操作詳解及實(shí)例代碼
- node.js Sequelize實(shí)現(xiàn)單實(shí)例字段或批量自增、自減
- windows系統(tǒng)下簡(jiǎn)單nodejs安裝及環(huán)境配置
- 一行命令搞定node.js 版本升級(jí)
- 跟我學(xué)Nodejs(一)--- Node.js簡(jiǎn)介及安裝開(kāi)發(fā)環(huán)境
- Node.js(安裝,啟動(dòng),測(cè)試)
- Node.js實(shí)戰(zhàn) 建立簡(jiǎn)單的Web服務(wù)器
- Sequelize中用group by進(jìn)行分組聚合查詢
相關(guān)文章
使用Node.js實(shí)現(xiàn)ORM的一種思路詳解(圖文)
這篇文章主要介紹了用Node.js實(shí)現(xiàn)ORM的一種思路詳解(圖文),需要的朋友可以參考下2017-10-10
詳解在node.js中require方法的加載規(guī)則
這篇文章主要介紹了詳解在node.js中require方法的加載規(guī)則,本文一步步解析了require加載規(guī)則,講述了核心的模塊,路徑形式的模塊,第三方模塊等,需要的朋友可以參考下2021-06-06
探索node之事件循環(huán)的實(shí)現(xiàn)
這篇文章主要介紹了探索node之事件循環(huán)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
基于node打包可執(zhí)行文件工具_(dá)Pkg使用心得分享
下面小編就為大家分享一篇基于node打包可執(zhí)行文件工具_(dá)Pkg使用心得分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
npm安裝依賴報(bào)錯(cuò)ERESOLVE?unable?to?resolve?dependency?tree的解決方
當(dāng)我們拿到一個(gè)前端項(xiàng)目的時(shí)候,想要把它運(yùn)行起來(lái),首先是要給它安裝依賴,下面這篇文章主要給大家介紹了關(guān)于npm安裝依賴報(bào)錯(cuò)ERESOLVE?unable?to?resolve?dependency?tree的解決方法,需要的朋友可以參考下2023-04-04

