Я думаю, вы передаете одно и то же «имя» для добавления к каждому изображению. синтаксис должен быть
formData.append(name, value, filename);
, и первым из них должно быть имя поля, и если оно не уникальное, оно перезаписывается.
попробуйте сделать его динамическим c
for (let i = 0; i < data.length; i++) {
formData.append(`filename_${i}`, data[i]);
}
или, возможно, что-то другое (уникальное из ваших данных) было бы лучше, просто не передавайте одно и то же имя для каждого изображения.