Operatività

Perché il modulo del tuo sito arriva vuoto dopo il reindirizzamento

In Chrome 157 un POST da 8 byte, dopo il 302 o il 303, prosegue con una GET vuota. Dopo il 307 i campi tornano: nome=Ada.

Marco Conte 2 min di lettura

Perché il modulo del tuo sito arriva vuoto dopo il reindirizzamento
In questa guida (3)
  1. 1Che cosa ho messo in ascolto
  2. 2Che cosa è arrivato
  3. 3Dove guardare nel registro

Il modulo può arrivare vuoto perché la seconda richiesta, quella dopo il reindirizzamento, non riporta i campi. Il 13 novembre 2026, in Chrome 157.0.8103.52, un POST con nome=Ada (8 byte) seguito da 302 o da 303 produceva una GET senza corpo. Lo stesso POST seguito da 307 arrivava di nuovo, ancora nome=Ada, ancora 8 byte.

Che cosa ho messo in ascolto

Un server locale riceveva il POST su /invio e rispondeva con Location: /arrivo. Il codice di stato cambiava tra 302, 303 e 307. La pagina aveva un solo campo, nome, valore Ada. Niente file, niente altro dominio, niente service worker. Ho ripetuto la prova con curl 8.7.1, comando con --data e -L, senza forzare il metodo con -X.

Che cosa è arrivato

In Chrome la prima richiesta era sempre POST /invio, 8 byte, nome=Ada. Dopo il 302 la successiva era GET /arrivo, lunghezza 0. Dopo il 303, di nuovo GET /arrivo, lunghezza 0. Dopo il 307 era POST /arrivo, 8 byte, nome=Ada.

Curl 8.7.1, con --data e -L, ha fatto la stessa cosa: GET vuota dopo 302 e dopo 303, POST con nome=Ada dopo 307. Con -X POST, invece, il metodo della seconda richiesta restava POST anche dopo 302 e 303, ma la lunghezza era 0. Il corpo non c'era lo stesso. Chi controlla solo il metodo, e usa -X, può credere che i campi siano stati rinviati.

La sezione 15.4.3 di RFC 9110, letta il 13 novembre 2026, dice che per il 302 il client può cambiare il metodo da POST a GET. Se questo esito non serve, la stessa nota indica il 307. La sezione 15.4.4 descrive il 303 come un reindirizzamento verso una richiesta di lettura, GET o HEAD. La sezione 15.4.8 dice che, con il 307, il client non deve cambiare il metodo.

Dove guardare nel registro

Nel registro degli accessi la coppia è il POST all'indirizzo del modulo e la richiesta successiva, quella verso Location. Se il programma legge i campi solo sulla seconda URL, un 302 gli consegna una richiesta vuota anche quando il browser li aveva inviati la prima volta. Il 303 serve quando, dopo aver salvato, si vuole aprire una pagina di esito con una GET. Il 307 serve quando il nuovo indirizzo deve ricevere lo stesso POST.

Non ho provato Firefox, Safari, un invio con fetch, un modulo con file, né un reindirizzamento verso un altro dominio. Gli 8 byte sono la lunghezza di nome=Ada, non una soglia del browser.

L'immagine di copertina, sulla scheda Wikimedia, è il retro di un modulo vuoto per il certificato di cittadinanza portoricana, estate 2007, dominio pubblico. È un altro modulo, diverso dal campo nome=Ada della prova.

Potrebbe interessarti anche...

Hai bisogno di scegliere una webagency per il tuo progetto?

Abbiamo la soluzione giusta

Parliamone
  • Consulenza specializzata
  • Soluzioni su misura
  • Risultati concreti

Tecnologialiberaper tutti

Hai bisogno d'aiuto?

Parla con noi. Il nostro supporto è attivo tutti i giorni dalle 9 alle 18

+390835239514 Chiamaci

Crea il tuo eCommerce

Creiamo eCommerce su misura senza farti spendere un patrimonio

info@roxxoitalia.com Scopri il nostro CMS

Crea il tuo sito web

Siti web già pronti per andare online. Vuoi saperne di più? Contattaci

info@roxxoitalia.com Scrivici