Clojure:
Een HTTP-verzoek verzenden
Hoe?
In Clojure kun je HTTP-verzoeken verzenden met de clj-http client.
Voeg eerst de afhankelijkheid toe aan je project.clj:
[clj-http "3.12.3"]Laten we nu een GET-verzoek verzenden:
(require '[clj-http.client :as client])
(let [reactie (client/get "http://httpbin.org/get")]
(println reactie))Voorbeeld van uitvoer:
{:status 200, :headers {...}, :body "..."}Om gegevens te posten:
(let [reactie (client/post "http://httpbin.org/post" {:form-params {:key "value"}})]
(println reactie))Diepere Duik
HTTP-verzoeken verzenden is niet nieuw. Het is zo oud als het web zelf. Clojure, zijnde een moderne Lisp, heeft verschillende bibliotheken om HTTP-verzoeken te maken. clj-http is een populaire, maar er bestaan ook anderen zoals http-kit of het kernonderdeel van Clojure clj-http.client.
clj-http leunt op de Apache HttpComponents Client voor Java onder de motorkap. Het is veelzijdig maar kan aanvoelen als zwaar Java-georiënteerd. Een alternatief, http-kit, is lichter en meer Clojure-idiomatisch maar minder rijk aan functies.
Wanneer je HTTP-verzoeken verzendt, doe je dit via TCP/IP, wat je verzoeken inkadert volgens een goed gevestigd protocol. Deze universele standaard stelt je in staat om met praktisch elke webdienst daarbuiten te interageren.
Zie Ook
clj-httpGitHub-repository: https://github.com/dakrone/clj-http- Officiële Clojure-site: https://clojure.org
- Documentatie van HttpComponents Client: https://hc.apache.org/httpcomponents-client-ga/
- Voor real-time behoeften, overweeg
http-kit: http://www.http-kit.org