簡體   English   中英

NodeJS-LDAPJS錯誤:events.js:160 throw er; //未處理的“錯誤”事件

[英]NodeJS - LDAPJS Error : events.js:160 throw er; // Unhandled 'error' event

我是nodejs的新手,在執行節點文件時遇到了這個問題。 我在centos 7上。當我嘗試使用LDAPJS連接到LDAP時。 當LDAP可用時它可以正常工作,但是它無法連接到服務器,並顯示此奇怪的錯誤:

events.js:160 throw er; //未處理的“錯誤”事件^

錯誤:在出口處將EHOSTUNREACH 172.24.130.203:389連接到Object.exports._errnoException(util.js:1020:11)。在TCPConnectWrap.afterConnect處將_exceptionWithHostPort(util.js:1043:20)連接起來[未完成](net.js: 1099:14)

我想捕獲此錯誤並顯示正確的錯誤消息。

我試過使用這個:

 rm -rf node_modules && npm cache clean --force && npm install

但這沒有幫助。

我的package.json文件是:

{
  "name": "package",
  "version": "1.0.0",
  "description": "For LDAP ",
  "main": "index.js",
  "dependencies": {
    "ldap": "^0.7.1",
    "passport": "^0.4.0"
  },
  "devDependencies": {},
  "scripts": {
    "test": "node index.js"
  },
  "keywords": [
    "ldapjs"
  ],
  "author": "Rajan",
  "license": "ISC"
}

這是index.js文件:

var ldap = require('ldapjs');
var http = require('http');
var assert = require('assert');


var client = ldap.createClient({
    url: 'ldap://172.24.130.203/dc=india,dc=bizrtc,dc=com'
});

var basedn = "dc=test,dc=test,dc=test";

var opts = {
  filter: '(ipPhone=*)',
  scope: 'sub',
  attributes: ['ipPhone','mail','name','description']
};

client.bind('username', 'mysecret', function (err) {

client.search('dc=india,dc=bizrtc,dc=com', opts, function (err, search) {
    search.on('searchEntry', function (entry) {
      var user = entry.object;
      console.log("Users are " + user.ipPhone + "  Display Name is  " + user.name + " E-Mail is " + user.mail + " Password is  " + user.description);

    });

  });
});


client.unbind(function(err) {
  assert.ifError(err);
});

看起來,客戶端捕獲套接字錯誤並重新發出以下錯誤客戶端-錯誤

所以你應該喜歡這樣的東西

client.on('error', err => { console.error(err) })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM