This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-12-22
Channels
- # adventofcode (12)
- # announcements (6)
- # aws (5)
- # babashka (57)
- # beginners (40)
- # calva (17)
- # clojure-europe (10)
- # clojure-nl (1)
- # clojure-norway (21)
- # clojure-uk (3)
- # clojuredesign-podcast (4)
- # cursive (3)
- # datomic (9)
- # etaoin (5)
- # fulcro (12)
- # hyperfiddle (42)
- # missionary (2)
- # off-topic (11)
- # reagent (6)
- # scittle (131)
- # squint (3)
- # tools-deps (4)
- # uncomplicate (1)
- # vscode (1)
Hva er et bra navn på denne funksjonen?:thinking_face:
(defn http-req-resp->map [request]
(-> request
(http-kit/request response-body->json)
deref))
Og kanskje jeg bør slå den sammen med denne:
(defn response-body->json [response]
(-> (:body response)
(json/parse-string keyword)))
Ja, kanskje det er best sånn. Jeg har en del små navngitte funksjoner for å skule ting for mine kollegaer som ikke er så godt kjent med Clojure, slik at de kan bruke dette når jeg ikke er her mer neste år. Men, ja, kanskje de heller bør lære å bruke de funksjonene rått.
jeg har skrevet litt om det også 🙈 https://www.kodemaker.no/blogg/2019-07-gammelt-triks-ny-kontekst/
Ah, ja, sant det! Den har jeg faktisk lest for en stund siden. På tide med en refresher, takk for påminnelsen!
Ah, right! Jeg hadde glemt at response-body->json
er en callback som brukes av http-kit/request
: (http-kit/request response-body->json)
Da må jeg vel bytte til en ikke-async approach først, som @U04V5VAUN var inne på tidligere.
Det er kanskje så enkelt som å
bytte require org.httpkit.client :as http-kit til hato.client :as hc
og (-> request (http-kit/request response-body->json) deref)
til (-> request (hc/request) (response-body->json))
Her er sluttresultatet av min live Clojure demo 😁 Kunne sikkert spikket på det i noen måneder til, men nå sier jeg meg ferdig, hehe
Ja, hehe! Jeg gikk mye frem og tilbake på det. Men hvis jeg fjerner den kan ikke brukeren se om det skjer ting 😛