curl -F – Trimitere formular multipart/form-data și upload fișiere în Comenzi cURL

Trimite date conform standardului multipart/form-data (RFC 2388), utilizat pentru formulare HTML cu upload de fișiere.

Sintaxă
curl -F "fisier=@foto.jpg" -F "descriere=Poza mea" <url>

Ce face curl -F - Trimitere formular multipart/form-data și upload fișiere

Opțiunea -F (sau --form) este utilizată pentru a emula trimiterea unui formular HTML ce conține controale de tip ``.

curl generează automat granițele MIME (boundary) și antetele individuale pentru fiecare câmp în parte.

Pentru a încărca un fișier, adăugați prefixul @ în fața căii pe disc (ex: `fisier=@document.pdf;type=application/pdf`).

Exemple

Exemplul 1: Încărcarea unei imagini de profil și a numelui de utilizator

Trimite fișierul imagine și un parametru text asociat.

curl -F "avatar=@/home/user/avatar.png;type=image/png" \
  -F "utilizator=dexter" \
  https://api.dexblog.ro/v1/profil/avatar

Ieșire în terminal

{
  "succes": True,
  "fisier_salvat": "avatar_dexter_2026.png",
  "dimensiune": 84920
}

Greșeli frecvente

  • Confuzia între -F (multipart/form-data) și -d (application/x-www-form-urlencoded); dacă un endpoint API așteaptă upload de fișiere, -d nu va funcționa.

Comenzi înrudite