✅ Problema solucionado
El error 422 ocurría porque: Al continuar una inspección existente, las fotos se cargan como URLs de string El código intentaba subirlas de nuevo como si fueran archivos File El backend rechazaba la petición porque no recibía un archivo válido → 422 Unprocessable Entity La solución: Verificar si cada elemento en answer.photos es un File o Blob (archivo nuevo) Solo subir archivos nuevos que aún no están en el servidor Ignorar URLs de string porque ya están subidas y almacenadas Ahora al continuar una inspección: ✅ Las fotos existentes se muestran correctamente (fix anterior) ✅ No se intentan subir de nuevo (fix actual) ✅ Solo se suben fotos nuevas que agregues
This commit is contained in:
@@ -4395,9 +4395,11 @@ function InspectionModal({ checklist, existingInspection, user, onClose, onCompl
|
|||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
const savedAnswer = await response.json()
|
const savedAnswer = await response.json()
|
||||||
|
|
||||||
// Upload photos if any
|
// Upload photos if any - Solo subir archivos nuevos (File/Blob), no URLs existentes
|
||||||
if (answer.photos.length > 0) {
|
if (answer.photos.length > 0) {
|
||||||
for (const photoFile of answer.photos) {
|
for (const photoFile of answer.photos) {
|
||||||
|
// Verificar si es un archivo nuevo y no una URL de foto ya subida
|
||||||
|
if (photoFile instanceof File || photoFile instanceof Blob) {
|
||||||
const formData = new FormData()
|
const formData = new FormData()
|
||||||
formData.append('file', photoFile)
|
formData.append('file', photoFile)
|
||||||
|
|
||||||
@@ -4407,6 +4409,8 @@ function InspectionModal({ checklist, existingInspection, user, onClose, onCompl
|
|||||||
body: formData
|
body: formData
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// Si es string (URL), ya está subida, no hacer nada
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mark as saved
|
// Mark as saved
|
||||||
|
|||||||
Reference in New Issue
Block a user