【发布时间】:2016-09-02 16:41:00
【问题描述】:
在一个客户登录后进行多次试验和错误,Meteor.userId() 可以在任何地方工作。由于应用程序的性质,现在模拟多登录并不容易。
是否期望 Meteor 跟踪哪个用户调用了哪个方法,特别是当该方法调用 public_method_A 而调用 private_method_B 而方法 A、B 属于全局范围内的模块时?
我在一位用户登录的情况下进行了尝试,发现 Meteor.userId() 提供了正确的信息。 doc 说除了发布功能之外的任何地方。
问:我是否需要在任何函数参数中传递 userId 或只在需要时传递用户 Meteor.userId() 并相信 Meteor.userId() 将始终获取调用第一个客户端方法的用户的 id?
谢谢
编辑
如果在服务器代码中需要 userId 的每个地方都使用 Meteor.userId()。与传递参数相比,这种“函数调用”不是很昂贵吗?
如果是这样,在服务器全局范围内创建一个全局范围const userId=Meteor.userId()变量可以吗?即(如果每个客户端都有一个新的服务器实例)
【问题讨论】:
标签: meteor