Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 在Snap Framework中的文件上载处理程序(handleMultiPart)中显示进度状态_Haskell_Haskell Snap Framework - Fatal编程技术网

Haskell 在Snap Framework中的文件上载处理程序(handleMultiPart)中显示进度状态

Haskell 在Snap Framework中的文件上载处理程序(handleMultiPart)中显示进度状态,haskell,haskell-snap-framework,Haskell,Haskell Snap Framework,我正在使用Snap框架来制作一个web应用程序的原型。我试图使用Snap.Util.FileUploads.handleMultiPart上载文件,使用iteratee立即处理它,同时在同一页面上显示进度消息 可以钩住Data.Enumerator.printChunks在控制台上调试进度。在处理文件上载时,我不知道如何在同一页上显示进度。在文件上载期间,如何使用handleMultiPart显示进度消息 另外,handleMultiPart使用PartInfo->Iteratee ByteSt

我正在使用Snap框架来制作一个web应用程序的原型。我试图使用Snap.Util.FileUploads.handleMultiPart上载文件,使用iteratee立即处理它,同时在同一页面上显示进度消息

可以钩住Data.Enumerator.printChunks在控制台上调试进度。在处理文件上载时,我不知道如何在同一页上显示进度。在文件上载期间,如何使用handleMultiPart显示进度消息


另外,handleMultiPart使用PartInfo->Iteratee ByteString IO a来处理文件上载。handleMultiPart是否应该采用MonadIO m=>PartInfo->Iteratee by Testring m a使其更简单?

一般来说,我不知道在上传文件时是否可以通过推送HTML响应在客户端显示进度。据我所知,实现这一点的web应用程序通常使用一些JavaScript API或Flash小部件来实现。当然,使用handleMultiPart是不可能的

然而,流式传输到控制台是另一回事——您可以很容易地提供一个枚举来记录区块信息或更新MVar,作为替代方案,然后向下游传递控制。在即将发布的Snap1.0中,这将减少大脑弯曲,它将使用更容易思考的io流


最后,handleMultiPart在IO上工作,因为否则需要对monad执行run操作,即从ma->ioa反向提升。有很多方法可以做到这一点,但是snap值得等待snap 1.0。希望它能尽快发布。