如何从 nodejs 调用 Mongodb Realm 函数

How to call a Mongodb Realm function from nodejs

我在 Mongodb 领域中部署了一个函数,我想在我的本地 nodejs 应用程序中调用它。我可以通过 uriMongoClient.

连接到 Mongodb Atlas 集群

但他们只能查询数据库而不能调用该函数。有没有一种方法可以使用 MongoClient.

的连接实例调用该函数

我还发现了两个 npm 包 - realmrealm-web。但是我无法用它们中的任何一个完成工作。

realm-web 中,文档说要像

一样使用 import
import * as Realm from "realm";

但这在节点中不起作用。

SyntaxError: Cannot use import statement outside a module

然后在realm中,打开领域的方法显然有两个参数

const Realm = require("realm");

const realm = Realm.open({
    path: "myrealm",
    schema: [TaskSchema],
  });

我找不到要填写的内容。

如有任何建议或帮助,我们将不胜感激

您需要有一个用户对象才能调用函数。

至少,类似于:

const credentials = Realm.Credentials.anonymous();
const user = await app.logIn(credentials);
const result = await user.functions.myFunction(arg1, arg2);

有了这个,您需要启用匿名身份验证(或其他身份验证提供程序以获得更安全的东西)并确保该功能不是私有的。

参考文档:

获取用户对象:https://docs.mongodb.com/realm/sdk/node/examples/authenticate-users/

调用函数:https://docs.mongodb.com/realm/sdk/node/examples/call-a-function/