Conduit v0.12.10 Conduit.Plug.Parse View Source

Parses the message body based on the content type.

It uses in order of preference:

  1. The content type specified for the plug.
  2. The content type specified on the message.
  3. The default content type text/plain.

The location of the content type can be changed from content_type to a header with the :header option.

This plug should be used in an incoming pipeline.

Examples

plug Conduit.Plug.Parse
plug Conduit.Plug.Parse, content_type: "application/json"

iex> import Conduit.Message
iex> message =
iex>   %Conduit.Message{}
iex>   |> put_body("{}")
iex>   |> Conduit.Plug.Parse.run(content_type: "application/json")
iex> message.body
%{}
iex> message.content_type
"application/json"

iex> import Conduit.Message
iex> message =
iex>   %Conduit.Message{}
iex>   |> put_body("{}")
iex>   |> Conduit.Plug.Parse.run(
iex>     content_type: "application/json",
iex>     header: "content_type"
iex>   )
iex> message.body
%{}
iex> get_header(message, "content_type")
"application/json"

Link to this section Summary

Functions

Formats the message body based on the content type

Callback implementation for Conduit.Plug.init/1

Callback implementation for Conduit.Plug.run/2

Link to this section Functions

Link to this function call(message, next, opts) View Source

Formats the message body based on the content type.

Callback implementation for Conduit.Plug.init/1.

Link to this function run(message, opts \\ []) View Source

Callback implementation for Conduit.Plug.run/2.