NodeJS 集成 SurrealDB 中的身份验证错误

Jai*_*har 1 surrealdb surrealdb-rpc

我最近遇到了SurrealDB并安装了它。

\n

添加到路径后,我使用启动服务器surreal start --log trace --user root --pass root

\n
\n .d8888b.                                             888 8888888b.  888888b.\nd88P  Y88b                                            888 888  \'Y88b 888  \'88b\nY88b.                                                 888 888    888 888  .88P\n \'Y888b.   888  888 888d888 888d888  .d88b.   8888b.  888 888    888 8888888K.\n    \'Y88b. 888  888 888P\'   888P\'   d8P  Y8b     \'88b 888 888    888 888  \'Y88b\n      \'888 888  888 888     888     88888888 .d888888 888 888    888 888    888\nY88b  d88P Y88b 888 888     888     Y8b.     888  888 888 888  .d88P 888   d88P\n \'Y8888P\'   \'Y88888 888     888      \'Y8888  \'Y888888 888 8888888P\'  8888888P\'\n\n\n[2022-09-27 17:37:44] INFO  surrealdb::iam Root authentication is enabled\n[2022-09-27 17:37:44] INFO  surrealdb::iam Root username is \'root\'\n[2022-09-27 17:37:44] INFO  surrealdb::dbs Database strict mode is disabled\n[2022-09-27 17:37:44] INFO  surrealdb::kvs Starting kvs store in memory\n[2022-09-27 17:37:44] INFO  surrealdb::kvs Started kvs store in memory\n[2022-09-27 17:37:44] INFO  surrealdb::net Starting web server on 0.0.0.0:8000\n[2022-09-27 17:37:44] INFO  surrealdb::net Started web server on 0.0.0.0:8000\n
Run Code Online (Sandbox Code Playgroud)\n

在我的 NodeJS 应用程序中,我有以下代码(改编自他们的文档):

\n
\n .d8888b.                                             888 8888888b.  888888b.\nd88P  Y88b                                            888 888  \'Y88b 888  \'88b\nY88b.                                                 888 888    888 888  .88P\n \'Y888b.   888  888 888d888 888d888  .d88b.   8888b.  888 888    888 8888888K.\n    \'Y88b. 888  888 888P\'   888P\'   d8P  Y8b     \'88b 888 888    888 888  \'Y88b\n      \'888 888  888 888     888     88888888 .d888888 888 888    888 888    888\nY88b  d88P Y88b 888 888     888     Y8b.     888  888 888 888  .d88P 888   d88P\n \'Y8888P\'   \'Y88888 888     888      \'Y8888  \'Y888888 888 8888888P\'  8888888P\'\n\n\n[2022-09-27 17:37:44] INFO  surrealdb::iam Root authentication is enabled\n[2022-09-27 17:37:44] INFO  surrealdb::iam Root username is \'root\'\n[2022-09-27 17:37:44] INFO  surrealdb::dbs Database strict mode is disabled\n[2022-09-27 17:37:44] INFO  surrealdb::kvs Starting kvs store in memory\n[2022-09-27 17:37:44] INFO  surrealdb::kvs Started kvs store in memory\n[2022-09-27 17:37:44] INFO  surrealdb::net Starting web server on 0.0.0.0:8000\n[2022-09-27 17:37:44] INFO  surrealdb::net Started web server on 0.0.0.0:8000\n
Run Code Online (Sandbox Code Playgroud)\n

我收到此错误:

\n
ERROR AuthenticationError: There was a problem with authentication\n    at Surreal._Surreal_signin (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/index.js:416:23)    at Surreal.<anonymous> (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/index.js:225:111)   \n    at Surreal.f (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/classes/emitter.js:28:18)     \n    at file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/classes/emitter.js:34:22\n    at Array.forEach (<anonymous>)\n    at Surreal.emit (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/classes/emitter.js:33:67)  \n    at Socket.<anonymous> (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/index.js:126:29)     \n    at file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/classes/emitter.js:34:22\n    at Array.forEach (<anonymous>)\n    at Socket.emit (file:///C:/Users/jaide/OneDrive/Documents/Projects/HTMLProject/buybig/node_modules/surrealdb.js/esm/classes/emitter.js:33:67)   \n^C\n
Run Code Online (Sandbox Code Playgroud)\n

这在我的 SurrealDB 日志中:

\n
[2022-09-27 18:06:04] INFO  surreal::web 127.0.0.1:64675 GET /rpc HTTP/1.1 101 "-" 68.7\xc2\xb5s\n
Run Code Online (Sandbox Code Playgroud)\n

VSCode通过SurrealDB cli 工具访问数据库Thunder Client可以完美地工作。

\n

任何帮助表示赞赏。

\n

小智 5

我也尝试过并得到了同样的错误。以下对我有用:

let dataBase = await new Surreal();
await dataBase.connect("http://127.0.0.1:8000/rpc");
await dataBase.signin({
  user: "root",
  pass: "root",
});
await dataBase.use("test", "test");

let result = await dataBase.create("user:someone", {
  name: { first: "someone", last: "else" },
});
console.log(result);
Run Code Online (Sandbox Code Playgroud)