如果客户端断开连接,Meteor可以在服务器上调用两次方法吗?

时间:2014-10-17 18:02:31

标签: meteor

LivedataConnection, line 357中,有评论说:

// Sends the method message to the server. May be called additional times if
// we lose the connection and reconnect before receiving a result.

这是否意味着如果客户端在方法返回之前调用方法并断开连接,它将在重新连接时重新调用该消息?如果那种方法不是幂等的呢?

1 个答案:

答案 0 :(得分:4)

基本上,是的,从版本1.0开始。流星方法不是幂等的。我和其他人一样报告了这个问题,它基本上得到了核心开发人员的证实:

  

https://github.com/meteor/meteor/issues/2407#issuecomment-52375372

在大多数情况下解决此问题的最佳方法是尝试为数据库编写唯一键,与方法请求相关联,或者使用其他一些聪明的条件数据库更新。在这些主题中有一些关于如何做到这一点的讨论: