Convertește curl în Clojure

curl2code convertește comenzile curl în cod Clojure folosind clj-http. Conversia rulează în browserul tău prin WebAssembly pentru confidențialitate deplină. Pentru Elixir, verifică convertorul nostru curl în Elixir. Pentru Java, vezi curl în Java. Mai jos sunt exemple practice Clojure.

Cum să copiezi curl din browserul tău

  1. 1

    Deschide DevTools

    Apasă F12 sau Ctrl+Shift+I pentru a deschide instrumentele de dezvoltare ale browserului.

  2. 2

    Mergi la fila Network

    Fă clic pe fila Network și efectuează acțiunea care declanșează cererea HTTP.

  3. 3

    Copiază ca cURL

    Fă clic dreapta pe cerere → CopyCopy as cURL. Apoi lipește-o mai sus.

Întrebări frecvente

Ce este clj-http?

clj-http este cea mai populară bibliotecă de client HTTP pentru Clojure, care împachetează Apache HttpComponents. Aceasta oferă un API idiomatic, bazat pe date, cu analiză automată JSON/EDN, gestionarea cookie-urilor și pooling de conexiuni. Adăugați la project.clj: [clj-http "3.x"]. curl2code folosește clj-http pentru toate conversiile Clojure.

clj-http vs http-kit vs aleph — pe care să o folosesc?

clj-http este sincronă, bogată în funcționalități și cea mai utilizată. http-kit este ușoară, cu suport asincron, excelentă pentru servere care fac și apeluri HTTP. aleph este construită pe Netty pentru I/O asincron de înaltă performanță. Pentru limbaje funcționale similare, consultați convertorul curl în Elixir sau curl în OCaml.

Cum se gestionează autentificarea în Clojure?

Pentru autentificarea Bearer, adăugați headere: (client/get url {:headers {"Authorization" "Bearer token"}'}). Pentru autentificarea Basic, folosiți opțiunea integrată: {:basic-auth ["user" "pass"]}. clj-http suportă, de asemenea, OAuth și autentificarea digest. curl2code convertește flag-urile -u și headerele în hărți Clojure idiomatice.

Cum se trimit date de tip multipart form în Clojure?

Folosiți opțiunea :multipart: (client/post url {:multipart [{:name "file" :content (clojure.java.io/file "doc.pdf")} {:name "desc" :content "My file"}]}). clj-http gestionează automat generarea boundary-ului și Content-Type. curl2code convertește flag-urile -F la acest model Clojure.

Cum se gestionează erorile HTTP în Clojure?

În mod implicit, clj-http aruncă ExceptionInfo la răspunsurile non-2xx. Dezactivați cu {:throw-exceptions false} pentru a obține în schimb harta de răspuns. Verificați (:status response). Folosiți try/catch cu ex-data pentru a extrage răspunsul din excepții.

Cum se fac cereri HTTP asincrone în Clojure?

Folosiți clj-http cu {:async? true}, care returnează un future. Sau folosiți http-kit: (http/get url callback). Pentru cereri paralele, folosiți pmap sau canale core.async. Future-urile Clojure rulează pe thread pool-ul JVM. Pentru concurență similară, consultați curl to Java.

Cum se setează timeout-urile în Clojure?

Transmiteți opțiunile de timeout: (client/get url {:connection-timeout 10000 :socket-timeout 30000}). Valorile sunt în milisecunde. Pentru reîncercări, folosiți opțiunea :retry-handler sau împachetați într-o funcție de reîncercare personalizată cu backoff exponențial. Acestea corespund opțiunilor curl --connect-timeout și --max-time.

Cum se folosește un proxy în Clojure?

Setați proxy-ul în harta de opțiuni: (client/get url {:proxy-host "proxy" :proxy-port 8080}). Pentru proxy-uri autentificate: adăugați :proxy-user și :proxy-pass. clj-http suportă, de asemenea, proxy-uri SOCKS. curl2code convertește flag-urile -x și --proxy în opțiunile proxy Clojure corecte.

Cum se trimite o cerere POST cu un corp JSON în Clojure?

Convertește o comandă curl POST precum curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL în Clojure folosind curl2code. Codul generat utilizează (client/post url {:content-type :json :body (json/generate-string data)}). curl2code detectează automat flag-urile -d/--data cu conținut JSON și setează antetul Content-Type corespunzător în codul clj-http.

Cum se adaugă autorizarea prin Bearer token în Clojure?

Introdu curl -H "Authorization: Bearer YOUR_TOKEN" URL în curl2code și acesta va genera cod clj-http cu antetul de autentificare: :headers {'Authorization' 'Bearer YOUR_TOKEN'}. curl2code detectează Bearer tokens atât din flag-urile -H "Authorization: Bearer ...", cât și din --oauth2-bearer. Pentru Basic auth, utilizează -u user:pass.

Cum se setează antetul Content-Type în Clojure?

curl2code convertește curl -H "Content-Type: application/json" URL în cod clj-http cu antetul corect: :content-type :json. Pentru datele -d, curl folosește implicit application/x-www-form-urlencoded; pentru încărcările de formulare -F, folosește multipart/form-data. curl2code mapează fiecare opțiune către API-ul clj-http corect.

Linkuri utile

Ghiduri curl

Convertește curl în alte limbaje