Javascript 为什么webhook和API消息使用pusher被调用了两次
我已经使用pusher[java]为后端和客户端创建了聊天应用程序 用于前端的iPhone] 在前端,我只调用了一次客户端事件,然而web钩子应该只在上面被点击一次,但实际上是这样的 被击中两次,所以我触发的API消息 那个特定的web钩子调用了两次 由于此问题,同步消息时出现问题 客户端事件 webhook被多次击中 在Pusher调试控制台上-事件在此显示两次 在javascript客户端文件的控制台上,它什么也没有显示 使用以下函数调用Javascript 为什么webhook和API消息使用pusher被调用了两次,javascript,java,chat,webhooks,pusher,Javascript,Java,Chat,Webhooks,Pusher,我已经使用pusher[java]为后端和客户端创建了聊天应用程序 用于前端的iPhone] 在前端,我只调用了一次客户端事件,然而web钩子应该只在上面被点击一次,但实际上是这样的 被击中两次,所以我触发的API消息 那个特定的web钩子调用了两次 由于此问题,同步消息时出现问题 客户端事件 webhook被多次击中 在Pusher调试控制台上-事件在此显示两次 在javascript客户端文件的控制台上,它什么也没有显示 使用以下函数调用 $('#chat_widget_form').s
$('#chat_widget_form').submit(function(e) {
e.preventDefault();
var chat_widget_input = $('#chat_widget_input'),
chat_widget_button = $('#chat_widget_button'),
chat_widget_loader = $('#chat_widget_loader'),
message = chat_widget_input.val(); //get the value from the text input
chat_widget_input.val("");
var messageObj = JSON.parse(message);
console.log("messageObj---->"+messageObj);
presenceChannel.trigger("client-chat_message", messageObj);
newMessageCallback(messageObj)
return false;
});
我找不到原因,有人能告诉我我在哪里吗
出问题了
嗨@Kamini,我在Pusher工作,所以应该能够提供帮助:)你能在客户端发布一个要点,或者复制并粘贴你在客户端触发你的客户端事件的代码吗?@hamchapman更新了这个问题,从原则上看一切都很好。如果只是为了测试,您删除了提交表单和正在发送的推送器消息之间的链接,而只是在页面加载时创建一个新的推送器对象,立即订阅状态通道,订阅成功绑定,然后触发消息,会发生什么情况?这仍然会发送两条消息吗?我的直觉是,你的JS代码中有一个小错误导致了重复。@hamchapman好的,我会检查并更新你的代码thanks@hamchapman嘿,谢谢,确定了2个不同的客户端事件webhook URL(具有不同的IP地址)将无法工作。我已经禁用了另一个。
{
"time_ms": 1453729661217,
"events": [
{
"name": "client_event",
"channel": "presence-3ER88B3CC3E94004A475DB06F5631E87",
"event": "client-event",
"data": "{\"at\":\"1453727819646\",\"ui\":\"6239487a87904e0ea9b4ebcd1e44f5e5\",\"gi\":\"5BF88B3CC3E94004A475DB06F1231E87\",\"mt\":\"3000\"}",
"socket_id": "158412.2865564",
"user_id": "6239487a87904e0ea9b4ebcd1e4ef5e5"
}
]
}
$('#chat_widget_form').submit(function(e) {
e.preventDefault();
var chat_widget_input = $('#chat_widget_input'),
chat_widget_button = $('#chat_widget_button'),
chat_widget_loader = $('#chat_widget_loader'),
message = chat_widget_input.val(); //get the value from the text input
chat_widget_input.val("");
var messageObj = JSON.parse(message);
console.log("messageObj---->"+messageObj);
presenceChannel.trigger("client-chat_message", messageObj);
newMessageCallback(messageObj)
return false;
});