say I have an endpoint that's configured to receive the following:
:parameters {:form :login/credentials}
where :login/credentials
is defined as
(s/def :login/email
(st/spec {:spec string?}))
(s/def :login/password
(st/spec {:spec string?}))
(s/def :login/credentials
(st/spec {:spec (s/keys :req [:login/email
:login/password])))
and I have followed the ring coercion guide (https://cljdoc.org/d/metosin/reitit/0.5.5/doc/ring/pluggable-coercion). Am I wrong to assume that :parameters
in the request map coming from a conforming request such as
email=my@myself.com&password=supersecret!
should be coerced into
{:login/email "<mailto:me@myself.com|me@myself.com>" :login/password "supersecret!"}
? Reason I'm asking is that I'm currently getting unqualified keywords:
{:email "me@myself" :password "supersecret!"}
and I'm not sure whether it's a mismatch in my expectation or a misconfiguration at some point