В вашем текущем подходе вы получаете только значение val1, которое содержит путь к файлу на клиентской стороне. Для загрузки файла на сервер вам необходимо передать сам файл, а не только его путь. На
клиентской стороне Вам нужно использовать объект FormData для создания формы, которая будет содержать файл. Затем отправьте эту форму через WebSocket.
const formData = new FormData();
formData.append('file', file);
socket.emit('newfilm', formData);
Ну и принять, что то вроде этого с multer для обработки загружаемых файлов. (const upload = multer({ storage: storage });)
socket.on('newfilm', (formData) => {
upload.single('file')(req, res, (err) => {
if (err) {
console.error('Ошибка при загрузке файла:', err);
return;
}
console.log('Файл успешно загружен:', req.file);
});
});