Å sende en HTTP-forespørsel med grunnleggende autentisering

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å