Я создаю API, в котором мне нужно на лету подключаться к другой базе данных, используя свои учетные данные. Мне нужно сделать функциональность похожей на MySql workbench - проверить соединение. В настоящее время мне нужно иметь дело с сервером MySql и MSSql. Я должен проверить все перестановки и комбинации на предмет неправильных учетных данных. т.е. если я передаю правильные учетные данные, например правильный хост, имя пользователя, пароль, порт, но неправильный соединитель вместо MySql, я передаю Mssql. Это вызывает исключение.
var db = {
host : data.hostName,
port : data.port,
database : data.database,
username : data.userName,
password : data.password,
connector : response[0].node_js_connector
}
var dataSource = new DataSource(db.connector, db);
dataSource.on('connected', function (er) {
if(er) {
console.log("reject");
reject(er);
}
else {
console.log("resolve");
resolve('Work With Database');
}
});
dataSource.on('error', function (er) {
if(er) {
console.log("reject1");
reject(er);
}
else {
console.log("reject1");
reject('Not Connected Databse');
}
});
Я также поместил код в блок try / catch для обработки исключения. Однако я не могу его уловить. В настоящее время я получаю следующую ошибку:
throw new RangeError('Index out of range');
RangeError: Index out of range
at checkOffset (buffer.js:968:11)
at Buffer.readUInt8 (buffer.js:1006:5)
Было бы здорово, если бы кто-нибудь помог мне в решении этой проблемы.
Заранее спасибо.
response
равна 0. Как это определяется? - person spicypumpkin   schedule 01.11.2017response
. Экспозиция состоится до получения «ответа». - person Maulik Kanani   schedule 02.11.2017response
, следовательно,IndexError
. Вам нужно будет найти способ проверить, пуст ли массив или нет. Надеюсь, это поможет. - person spicypumpkin   schedule 02.11.2017