Я создаю систему чата в реальном времени.
это код переднего конца.
OnLoad
Echo.join(`chat.${id}`)
.here(users => {})
.listenForWhisper('sent', (e) => {});
отправлено
Echo.join(`chat.${id}`)
.whisper('sent', {
message : message,
sender : sender,
});
Что я хочу сделать, так это обработать событие «послано» шепотом в laravel следующим образом
$message; // I want to get from whisper
$sender; // I want to get from whisper
Chat::create([
"message" => $message,
"sender" => $sender,
]);
Но я не знаю, как это реализовать.
Итак, я до сих пор так кодирую.
Отправлено
Echo.join(`chat.${id}`)
.whisper('sent', {
"message" : message,
"sender" : sender,
});
axios.post('/message_sent', {
message : message,
sender : sender,
});
api.php
Route::post('/message_sent', function(Request $request) {
Chat::create([
"message" => $request['message'],
"sender" => $request['sender'],
]);
});
в этом случае сообщение (от клиента к серверу) отправляется по протоколу HTTP, а не по протоколу TCP / IP.
Кто-нибудь знает, как получить значение шепота на стороне сервера ??