r0man/cljs-http

How to decode an http/get transit json response to a edn?

Opened this issue · 3 comments

My response is in transit json and I need to convert it to edn.

cljs-http automatically converts the json into a cljs object.

So for the moment, I am doing:

(-> json
      clj->js
      js/JSON.stringify
      (transit-decode :json nil))

But I'm sure there is a better way.

r0man commented

@viebel I'm on holiday at the moment and AFK most of the time. What do you mean by " I need to convert it to edn"? An EDN string? I guess you want Clojure maps and vectors. cljs-http should decode transit json responses automatically, provided you set the "Content-Type" header to "application/transit+json".

You guessed right. I want a clojurescript object. The problem is that I cannot modify the "Content-Type" header. Is there a way to tell receive the string as is?

r0man commented

@viebel This is not possible at the moment I think. Patch that mimics the behaviour of clj-http welcome!