【发布时间】:2018-09-02 18:08:54
【问题描述】:
我正在使用 Laravel 5.6.7、Socket.IO 和 vue.js。 我没有使用 Pusher 和 redis。下面是我向与我一对一聊天的用户发送消息的代码。
var url = "http://localhost:6001/apps/My_appId/events?auth_key=My_Key";
var socketId = Echo.socketId();
var request = {
"channel": "private-Send-Message-Channel.2",
"name": "MessengerEvent",
"data": {
"msg": message
},
"socket_id": socketId
};
axios.post(url, JSON.stringify(request)).then((response) => {
//Message Sent
});
我正在尝试通知正在与我聊天的用户我仍在打字。我应该使用上面相同的代码,在每个 char 类型上发出 xhr 吗?这是通知用户消息输入仍在进行中的唯一方法吗?
更新 1
有没有更好的方法来发布上面提到的每次按键的 xhr?我的意思是如果用户输入 200 个字符。我会发布 xhr 200 次吗?
或
我们是否有一个名为whisper 和listenForWhisper 的事件,如https://laravel.com/docs/5.6/broadcasting#client-events 所示?我正在使用 vue.js 和 laravel 5.6.7 without pusher 和 without redis
【问题讨论】:
-
你可能想要限制它。
标签: javascript laravel vue.js laravel-5.6