Доброго времени суток, есть задача отправлять сообщение на сервер, где может быть несколько файлов
Соединение в чате используется через сокеты
Соответственно я в небольшом замешательстве, потому что:
Нужно отправить текстовое сообщение вместе со всеми файлами, а ни одна знакомая мне возможность веб-сокета (ни socket.send(), ни socket.send(JSON.stringify())) не позволяет этого добиться
Ясное тело, что можно сначала передать текст:
socket.send(JSON.stringify({text: "text"}));
А затем файлы (да и то непонятно, как все сразу), поэтому циклом:
socket.binaryType = "blob";
for (let i=0; i<files.length; i++) {
socket.send(files[i]);
}
В голову приходит нечто подобное:
var all_files = [];
for (let i=0; i<files.length; i++) {
var file = some_func_get_base64(files[i])
all_files.push(file);
}
socket.send(JSON.stringify({text: "text", files: all_files}));
Но ведь это похоже на полный бред
Подскажите пожалуйста, как грамотно решить такую задачу