我使用 perform javascript 调用在服务器上执行操作,如下所示:
subscription.perform('action', {...});
但是,据我所见,似乎没有内置的javascript“成功”回调,即让我知道该操作在服务器端结束(或可能失败)。我正在考虑在动作结束时发送广播,如下所示:
def action(data)
...do_stuff
ActionCable.server.broadcast "room", success_message...
end
但所有订阅此“房间”的客户都会收到该消息,可能会导致误报。此外,据我所知,消息顺序不能保证,因此此操作中的先前广播可能会在成功消息之后传递,可能会导致进一步的问题。
对此有任何想法还是我完全错过了什么?