Javascript 强制使用NodeJS从PostGreSQL进行同步查询(然后将其返回给解析该查询的函数)

Javascript 强制使用NodeJS从PostGreSQL进行同步查询(然后将其返回给解析该查询的函数),javascript,node.js,database,postgresql,promise,Javascript,Node.js,Database,Postgresql,Promise,我有一个数据库,其中包含一个用户列表(及其各自的用户名和密码)。我有一个登录系统,它运行一个函数,当找不到用户时返回false,当找到用户时返回用户名/密码。然后在登录系统中使用,但这与此无关 我的问题是,该函数必须向数据库发送查询。但是回调实际上不能返回任何东西,所以我不能使用 await database.query('querythings',data=await function(err,res){function things}) 我尝试声明一个变量,然后在查询回调设置内部将该变量设置

我有一个数据库,其中包含一个用户列表(及其各自的用户名和密码)。我有一个登录系统,它运行一个函数,当找不到用户时返回
false
,当找到用户时返回用户名/密码。然后在登录系统中使用,但这与此无关

我的问题是,该函数必须向数据库发送查询。但是回调实际上不能返回任何东西,所以我不能使用

await database.query('querythings',data=await function(err,res){function things})

我尝试声明一个变量,然后在查询回调设置内部将该变量设置为获取的数据,然后在该查询外部,
wait
保留其余代码,但它只返回
未定义的
。由于多重承诺的解决,
wait
没有任何作用(我想)。因此,最终的结果是函数返回
undefined
,服务器崩溃

是否有一种方法可以将获取的数据通过函数传递给登录系统

结构:
登录调用取数函数;获取函数查询数据库;callback设置一个passthrough;fetch函数接收该传递并对其进行解析,然后将内容返回到登录名。

感谢您的帮助,internet。不像上次


事实证明,由于内部有回调,所以它不会返回承诺,因此async/await不可用。我仍然不希望服务器在发生错误时立即崩溃,但try/catch工作正常。

lambda函数是否返回承诺?您正在做的事情与此用户正在做的相同您应该使用异步/等待或回调,而不是同时使用这两种方法。