我有两个共享相同数据库的Meteor应用程序,因此它们具有相同的帐户。我想这样做,以便当用户登录App1时,他也会在访问App2时自动登录。
这可能吗?你会怎么建议我这样做?非常感谢你!
P.S。 Meteor官方指南在"共享账户"提供类似的内容。 "数据结构"部分,但是当我尝试它时,它并没有真正起作用。它应该有效吗?
答案 0 :(得分:0)
P.S。 Meteor官方指南在“数据结构”部分的“共享帐户”中提供了类似的内容,但是当我尝试它时,它并没有真正起作用。它应该有效吗?
这是要走的路,当然有效! this example repository.
中有这种架构的概念证明您不会自动登录到第二个应用程序。当您登录第一个应用程序时,必须以编程方式登录到第二个应用程序。
指南中的代码是要走的路:
// This is server A's token as the default `Accounts` points at our server
const token = Accounts._storedLoginToken();
// We create a *second* accounts client pointing at server B
const app2 = DDP.connect('url://of.server.b');
const accounts2 = new AccountsClient({ connection: app2 });
// Now we can login with the token. Further calls to `accounts2` will be authenticated
accounts2.loginWithToken(token);
答案 1 :(得分:0)
两个选项(可以一起使用):
$.map
环境变量MONGO_URL
环境变量实施例: 主要应用:
DDP_DEFAULT_CONNECTION_URL
第二个应用:
ROOT_URL=https://example1.com
DDP_DEFAULT_CONNECTION_URL=https://example1.com
MONGO_URL=mongodb://mongo.example1.com:27000