Verifies Content-Digest on incoming Plug requests.
Because Plug.Parsers consumes the raw body, digest computation must be
hooked into body reading:
plug Plug.Parsers,
parsers: [:json],
json_decoder: JSON,
body_reader: {HTTPDigest.Plug, :read_body, []}
plug HTTPDigest.Plug, required: trueOn failure, the default response is 403 with Want-Content-Digest.
Override it with :on_failure.
Summary
Functions
A body_reader for Plug.Parsers that folds raw request body chunks into
a digest stream stored in conn.private[:http_digest_stream].
Functions
@spec read_body( Plug.Conn.t(), keyword() ) :: {:ok, binary(), Plug.Conn.t()} | {:more, binary(), Plug.Conn.t()} | {:error, term()}
A body_reader for Plug.Parsers that folds raw request body chunks into
a digest stream stored in conn.private[:http_digest_stream].