Haskell 如何将“rawRequestBody”导入“requestBodySource”?

Haskell 如何将“rawRequestBody”导入“requestBodySource”?,haskell,yesod,conduit,http-conduit,Haskell,Yesod,Conduit,Http Conduit,Yesod具有具有以下类型签名的rawRequestBody: rawRequestBody :: MonadHandler m => Source m ByteString http管道具有以下功能,可将源代码转换为RequestBody: requestBodySource :: Int64 -> Source (ResourceT IO) ByteString -> RequestBody 我希望能够将rawRequestBody流式传输到S3对象,方法是将其转换为处

Yesod具有具有以下类型签名的
rawRequestBody

rawRequestBody :: MonadHandler m => Source m ByteString
http管道具有以下功能,可将源代码转换为
RequestBody

requestBodySource :: Int64 -> Source (ResourceT IO) ByteString -> RequestBody
我希望能够将
rawRequestBody
流式传输到S3对象,方法是将其转换为处理程序中的
RequestBody
ResourceT IO~MonadHandler
无法计算,而且我似乎无法执行
MonadHandler m=>m->ResourceT IO

我试过:

-如果我们从
rawRequestBody
获取
源处理程序ByteString
,那么获取
ByteString
的唯一方法似乎是
消费它,即

transPipe ??? rawRequestBody :: Source (ResourceT IO) ByteString
-但是,请求主体似乎已清除,因此没有任何可用数据

请帮助:)

该函数将返回WAI值。您可以使用从中获取
源代码