Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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 在Yesod中显示动态生成的图像_Haskell_Yesod - Fatal编程技术网

Haskell 在Yesod中显示动态生成的图像

Haskell 在Yesod中显示动态生成的图像,haskell,yesod,Haskell,Yesod,我正在写我的第一个YesSOD应用程序。 该应用程序涉及用户选择查看一个图形,该图形是根据服务器上数据库中存储的数据动态生成的。 我知道如何获取用户请求并在服务器的文件系统上创建映像,但如何创建一个显示该请求的响应页面 另外,当我使用GnuPlot生成映像时,我只知道如何将其作为文件写入文件系统,但如果您碰巧知道如何在内存中获取数据,可能会更好。 谢谢,对于磁盘上的文件,您可以在处理程序中使用 getImageR = do -- ... save image data to disk s

我正在写我的第一个YesSOD应用程序。 该应用程序涉及用户选择查看一个图形,该图形是根据服务器上数据库中存储的数据动态生成的。 我知道如何获取用户请求并在服务器的文件系统上创建映像,但如何创建一个显示该请求的响应页面

另外,当我使用GnuPlot生成映像时,我只知道如何将其作为文件写入文件系统,但如果您碰巧知道如何在内存中获取数据,可能会更好。
谢谢,

对于磁盘上的文件,您可以在处理程序中使用

getImageR = do
    -- ... save image data to disk somewhere
    sendFile typeJpeg "/path/to/file.jpg"
要从内存中的测试环
发送,请使用

getImageR=do

实际上,我认为在这种情况下,您可以使用“return”而不是sendResponse,因为您不需要任何短路。另外,如果您使用的是普通IO函数,请记住使用liftIO。
getImageR = do
    bytes <- -- generate image data
    sendResponse (typePng, toContent bytes)