HTTP 422 Contenuto non elaborabile
422 Unprocessable Content significa che la richiesta è ben formata, ma i dati contenuti non sono validi per l'elaborazione.
Significato
Il server comprende il formato, per esempio JSON valido, ma il contenuto non rispetta le regole: un campo obbligatorio manca, l'e-mail è sbagliata o una data non è ammessa. Il codice è comune nelle API REST e nei framework come Rails, Laravel e FastAPI per errori di validazione.
Cause comuni
- Un campo obbligatorio è mancante oppure vuoto.
- Un valore ha un formato sbagliato, come e-mail, numero di telefono o data.
- Un valore è fuori dall'intervallo consentito.
- Una regola aziendale dell'applicazione impedisce la richiesta.
Cosa può fare un visitatore?
- Controlla i campi del modulo, soprattutto quelli segnalati come non validi, e correggi i dati prima di riprovare.
Cosa può fare il gestore?
- Restituisci nell'API un elenco dei campi errati con messaggi chiari e specifici.
- Usa 400 per richieste malformate e 422 per contenuti invalidi in una richiesta formalmente corretta.
- Verifica gli input anche lato browser per un'esperienza migliore, mantenendo sempre la validazione sul server.
Effetti sulla SEO
422 compare soprattutto nelle API e nei moduli e non ha normalmente effetti diretti sulla SEO di pagine pubbliche.
Domande frequenti
Quando usare 400 e quando 422?
400 si usa per una richiesta malformata; 422 per una richiesta corretta nella forma ma con dati che non rispettano le regole.
Perché FastAPI restituisce 422?
Perché i dati non corrispondono al modello atteso, per esempio per tipi errati o campi obbligatori mancanti.