Streaming
linnet-conduit package enables use of
ConduitT streams for both chunked requests and responses.
import Linnet.Conduit
Import above exposes:
- orphan instance of
ToResponse ct (ConduitT () a m ()) - orphan instance of
ToResponse ApplicationJson (ConduitT () a m ())that intersperse JSON chunks with newline symbol streamBody :: Endpoint m (ConduitT BL.ByteString BL.ByteString m ())endpoint
First two instances practically allow to return ConduitT () a m () from endpoints in case if Encode ct a is defined.
Linnet runs stream on itself converting it into streaming response with the help of NatureTransformation m IO type class.