This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-02-24
Channels
- # aleph (19)
- # announcements (59)
- # asami (34)
- # aws (1)
- # babashka (17)
- # beginners (174)
- # bitcoin (11)
- # calva (16)
- # chlorine-clover (5)
- # cider (5)
- # clj-kondo (14)
- # cljsrn (13)
- # clojars (25)
- # clojure (124)
- # clojure-australia (1)
- # clojure-europe (48)
- # clojure-nl (4)
- # clojure-spec (1)
- # clojure-uk (40)
- # conjure (6)
- # core-async (25)
- # cursive (30)
- # data-oriented-programming (3)
- # datomic (14)
- # depstar (14)
- # emacs (3)
- # graalvm (27)
- # helix (1)
- # honeysql (25)
- # hoplon (3)
- # jobs-discuss (6)
- # kaocha (3)
- # lsp (109)
- # lumo (1)
- # malli (5)
- # meander (21)
- # music (1)
- # pathom (1)
- # re-frame (4)
- # reitit (1)
- # remote-jobs (1)
- # reveal (11)
- # rewrite-clj (3)
- # shadow-cljs (42)
- # spacemacs (15)
- # sql (13)
- # startup-in-a-month (4)
- # tools-deps (45)
- # vim (16)
- # xtdb (23)
- # yada (1)
Hello, I have a question. I am trying to set up a server that can receive and process multipart messages. My attempt is with aleph with yada resources. But I have difficulties in processing the manifold.stream in the response. Do you have some tips and tricks? I am trying to use parse-multipart in this way:
(yada/listener
["/some-route"
(yada/resource {:methods
{:post {:consumes "multipart/form-data"
:produces "application/json"
:response (fn [ctx]
(let [boundary (last (clojure.string/split (get-in ctx [:request :headers "content-type"]) #"="))]
(try (->> (get-in ctx [:request :body])
(yada.multipart/parse-multipart boundary 10000 1000)
(manifold.stream/transform (xf-bytes->content))
manifold.stream/stream->seq)
(catch Exception e
(println (.getMessage e)))))
(clojure.data.json/write-str {:success true}))}}})]
{:port 1234
:raw-stream? true
:executor (flow/utilization-executor 0.9 64)})