Menu
CoddyTech

Codici di uscita di curl

Lezione 30 di 47 del corso Reti da terminale di Coddy.

In un singolo comando curl ci sono due nozioni di errore completamente diverse, e confonderle causa bug reali.

Il codice di stato è la risposta del server: 200, 404, 500. Il codice di uscita indica se curl è riuscito ad avviare la comunicazione.

Un 404 è una conversazione riuscita. Il server è stato raggiunto, ha capito la richiesta e ha risposto. curl exits 0. Uno script che controlla solo il codice di uscita lo considererà corretto: è una causa classica di pipeline che passano mentre scaricano una pagina di errore.

curl -s -o /dev/null http://127.0.0.1:9120/missing
echo $?     # 0, perché la richiesta stessa è andata a buon fine

Se vuoi che un errore di stato causi un errore, richiedilo con --fail, che fa sì che curl esca con un codice diverso da zero per gli stati 4xx e 5xx. Altrimenti, controlla tu %{http_code}.

challenge icon

Sfida

Difficile

Mostra che un 404 è comunque una richiesta riuscita.

  1. Servi una cartella sulla porta 9120
  2. Richiedi una pagina che non esiste e stampa status= con il codice di stato
  3. Sulla riga successiva stampa exit= con il codice di uscita di curl

Output previsto:

status=404
exit=0

Leggi $? subito dopo il comando curl che l'ha prodotto.

Provalo tu

Terminale
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Reti da terminale

Esercitati da solo: Playground Terminal