Clojure:
Å sende en HTTP-forespørsel med grunnleggende autentisering
Hvordan gjøre det:
For å sende en HTTP-forespørsel med grunnleggende autentisering i Clojure, kan vi bruke clj-http
biblioteket. Her er et eksempel:
(require '[clj-http.client :as client])
(let [credentials (str "Basic " (.encode (java.util.Base64/getEncoder) (.getBytes "brukernavn:passord")))]
(client/get "https://eksempel.com/ressurs"
{:headers {"Authorization" credentials}}))
Eksempel på svar:
{:status 200
:headers {"Content-Type" "application/json"}
:body "{\"data\":\"verdi\"}"}
Dypdykk
Grunnleggende autentisering har vært en enkel HTTP-autentiseringsmekanisme siden tidlig på internettet. Sikkerhetsrisikoen inkluderer at legitimasjon i klartekst kan avlyttes hvis ikke HTTPS brukes.
Alternativer til grunnleggende autentisering inkluderer OAuth, API-nøkler og JWT (JSON Web Tokens), som alle kan tilby en høyere sikkerhetsnivå.
Implementeringsdetaljer i Clojure kan kreve ekstra oppsett for HTTPS og håndtering av ulike autentiseringsflyter, basert på hvilke sikkerhetstiltak som er på plass på serveren du kommuniserer med.
Se også
clj-http
dokumentasjon: https://github.com/dakrone/clj-http- ClojureDocs, en Clojure-samfunnsdrevet dokumentasjonsressurs: https://clojuredocs.org/
- IETF HTTP Basic Authentication standard: https://tools.ietf.org/html/rfc7617