同步Meteor.method挂起待命

同步Meteor.method挂起待命,meteor,methods,Meteor,Methods,我正在构建一个Meteor应用程序,它可以与第三方API交换数据,我需要一个同步运行的方法,以便在令牌过期时将刷新令牌交换为访问令牌 我在一种方法中使用了以下方法: tokenExpiration = Meteor.user().services.box.expiresAt if Date.now() - tokenExpiration > 0 Meteor.call("refreshToken") else console.log("Token valid. Proceed wi

我正在构建一个Meteor应用程序,它可以与第三方API交换数据,我需要一个同步运行的方法,以便在令牌过期时将刷新令牌交换为访问令牌

我在一种方法中使用了以下方法:

tokenExpiration = Meteor.user().services.box.expiresAt
if Date.now() - tokenExpiration > 0
  Meteor.call("refreshToken")
else
  console.log("Token valid. Proceed with call to Box API")
refreshToken
方法的启动方式如下,就像任何其他方法一样:

Meteor.methods(
  refreshToken: ->
    ...LOGIC HERE...
)
我知道逻辑是好的,因为如果我把它直接放在原始方法(上面)中,它工作得很好。问题是,当我在原始方法中使用Meteor.call(“refreshToken”)时,Meteor只是挂起该行,拒绝进一步移动。最初的方法是从客户机调用的,但其余的都在服务器上进行


我没有看到任何错误,我是否遗漏了什么?

服务器或客户端控制台上有任何错误?没有,没有。同样的
Meteor.call(“refreshToken”)
在我同步调用的另一个方法中也可以正常工作。在异步运行的方法中调用同步方法是否存在问题?请尝试在方法调用之前添加一些日志记录,并且也在被同步调用的方法的顶部,以确保它实际到达那里。日志显示脚本在方法调用之前立即到达那里,但从未实际进入被调用的方法。我搞不懂!您的方法函数中是否有
返回
?看见