-1
私は現在、postgresqlから別の関数を呼び出す関数でユーザー名とパスワードを検証しようとしています。私の検証はvalidate関数でtrueを返しますが、そうではありません。上記のconsole.logが機能し、私が実際にvalidate()を使用するときに使用するパラメータはtrueを返しますが、そうではありません。postgresqlプールからbooleanを返す
function validate(username, password){
//PG Connect
pool.connect((err, client, done)=>{
if(err){
return console.error('error fetching client from pool', err);
}
client.query('SELECT * FROM users', (err, result)=>{
if(err){
return console.error('error running query', err);
}
for(let i = 0; i < result.rows.length; i++){
if(result.rows[i].username.trim() == username && result.rows[i].password.trim() == password){
console.log("this works");
return true; //this doesn't return true when I call the function
}
console.log(result.rows[i].username.trim() + " " + result.rows[i].password.trim());
}
return false;
done();
});
});
}
データベースからすべてのユーザーレコードを要求することにより、ユーザーを検証することはありません。これは私がまだ見た最悪の解決策です。ユーザーの詳細をパラメータとしてクエリに渡すことになっています。 –