muuntaja.middleware

wrap-exception

(wrap-exception handler)(wrap-exception handler on-exception)

Middleware that catches exceptions of type :muuntaja/decode and invokes a 3-arity callback [^Exception e format request] which returns a response. Support async-ring.

wrap-format

(wrap-format handler)(wrap-format handler prototype)

Middleware that negotiates a request body based on accept, accept-charset and content-type headers and decodes the body with an attached Muuntaja instance into :body-params. Encodes also the response body with the same Muuntaja instance based on the negotiation information or override information provided by the handler.

Takes a pre-configured Muuntaja or options maps as second argument. See https://github.com/metosin/muuntaja for all options and defaults. Supports async-ring.

wrap-format-negotiate

(wrap-format-negotiate handler)(wrap-format-negotiate handler prototype)

Middleware that negotiates a request body based on accept, accept-charset and content-type headers with an attached Muuntaja instance. Injects negotiation results into request for wrap-format-request to use.

Takes a pre-configured Muuntaja or options maps as second argument. See https://github.com/metosin/muuntaja for all options and defaults. Supports async-ring.

wrap-format-request

(wrap-format-request handler)(wrap-format-request handler prototype)

Middleware that decodes the request body with an attached Muuntaja instance into :body-params based on the negotiation information provided by wrap-format-negotiate.

Takes a pre-configured Muuntaja or options maps as second argument. See https://github.com/metosin/muuntaja for all options and defaults. Supports async-ring.

wrap-format-response

(wrap-format-response handler)(wrap-format-response handler prototype)

Middleware that encodes also the response body with the attached Muuntaja instance, based on request negotiation information provided by wrap-format-negotiate or override information provided by the handler.

Takes a pre-configured Muuntaja or options maps as second argument. See https://github.com/metosin/muuntaja for all options and defaults. Supports async-ring.

wrap-params

(wrap-params handler)