如何在流星中使用 DDP 等待成功连接(服务器 -> 服务器)

How do I wait for successful connection using DDP in meteor (server -> server)

继续 DDP 的讨论:how do I wait for a connection?:

基于上面的线程,我们利用 Tracker.autorun 来等待和确认客户端与 meteor 服务器之间的成功连接。

我想在服务器上做同样的事情:服务器连接

基本上,我有一个 meteor 服务器 (server1),需要“测试”并查看另一个 meteor 服务器 (server2) 是否可用。

每次我 运行 DDP.connect(remoteUrl).status() 在 server1 的流星方法中,它总是说“连接”。我知道它会在下一两秒内连接,但我等不及要检查连接成功标志了。

如何在服务器上执行此操作?

谢谢

服务器上的这种形式不存在反应性的想法,所以像 Tracker 这样的东西不是一个选项。幸运的是,虽然有 onReconnect callback you can use. You can steal the required logic from my meteor-serversync package:

const connection = DDP.connect(URL);
connection.onReconnect = function() {
  console.log("(re)connected");
  if (!initialized) {
    options.onConnect && options.onConnect();
  }
};