【发布时间】:2015-12-05 00:01:09
【问题描述】:
我最近一直在进行聊天,但遇到了问题。有时有人发送一条消息,我被插入,但用户不知道它是否在服务器上(其他人阅读它)。
我试图做的就像whatsapp正在做的那样在保存的服务器上显示“检查”。
我的主要问题是我无法在服务器插入时拦截消息(至少据我所知)。我尝试先将味精保存在客户端,然后将该集合复制到服务器(速度非常慢,而且工作起来很糟糕)。
现在有解决办法吗?
【问题讨论】:
我最近一直在进行聊天,但遇到了问题。有时有人发送一条消息,我被插入,但用户不知道它是否在服务器上(其他人阅读它)。
我试图做的就像whatsapp正在做的那样在保存的服务器上显示“检查”。
我的主要问题是我无法在服务器插入时拦截消息(至少据我所知)。我尝试先将味精保存在客户端,然后将该集合复制到服务器(速度非常慢,而且工作起来很糟糕)。
现在有解决办法吗?
【问题讨论】:
根据Meteor docs在服务器上插入成功后调用insert的回调,可以通过检查是否有错误来判断是否插入。
在客户端,插入从不阻塞。如果您不提供回调并且服务器上的插入失败,则 Meteor 将向控制台记录警告。如果您提供回调,Meteor 将使用错误和结果参数调用该函数。在错误情况下,结果是未定义的。如果插入成功,则错误未定义,结果为新文档 ID。
喜欢:
Chat.insert({message: 'Hello there!'}, (err, result) => {
if(!err) {
//successful insert
} else {
//sucks, failed
}
});
【讨论】: