NodeJS 抛出新错误('SASL:紧急停堆-服务器-第一条消息:客户端密码必须为字符串'

btqmn9zl  于 2023-01-08  发布在  Node.js
关注(0)|答案(4)|浏览(139)

我尝试连接我的数据库到express,但我有这个消息..

throw new Error('SASL: SCRAM-SERVER-FIRST-MESSAGE: client password must be a string'

如果有人解决了同样的问题)

8nuwlpux

8nuwlpux1#

当你安装Postgresql的时候你为Postgres用户设置密码了吗?因为我也有同样的问题,我解决了这个问题,当你安装Postgres的时候,我做了这个愚蠢但显然很重要的步骤。运行shell,然后使用命令\password。
然后应该把这个相同的密码放在你用express连接数据库的代码中。

ni65a41a

ni65a41a2#

当我试图将本地运行的网站连接到本地运行的数据库时,出现了同样的错误消息。
我能够将我的本地网站连接到我的实时数据库。而且我的实时网站也能与我的实时数据库正常工作。
但我无法将本地网站(或Postman)连接到本地数据库。
但是,我刚刚收到一个朋友的帮助来修复这个问题,我在我的pool.js文件的顶部添加了这一行:

import dotenv from 'dotenv/config';

问题是它没有从pool.js文件访问环境变量。虽然我的朋友说一个更好的解决方案是将'dotenv/config'添加到package.json文件中的脚本中,但他不确定什么是正确的语法,所以我接下来将尝试找出它。

dzjeubhm

dzjeubhm3#

这可能是密码值不可用。如果你把密码里面。env文件,确保配置它。在我的程序,当密码值不可用,它记录这个错误。

laawzig2

laawzig24#

语法为

nodemon -r dotenv/config src/server.js

相关问题