开发者

Displaying dynamically generated images in Yesod

I'm writing my first Yesod app. The application involves the user selecting to view a graph, dynamically generated based on data stored in a DB on the server. I know how to get the user request and create the image on the server's file system, but how do I create a response page presenting it?

P.S. As I'm us开发者_如何学Pythoning GnuPlot to generate the image, I only know how to write it as a file to the file system, but If you happen to know how to get the data in memory it'll probably be even better. Thanks,


For a file on disk, you can use sendFile in your handler.

getImageR = do
    -- ... save image data to disk somewhere
    sendFile typeJpeg "/path/to/file.jpg"

For sending it from a ByteString in memory, use sendResponse.

getImageR = do
    bytes <- -- generate image data
    sendResponse (typePng, toContent bytes)

Make sure you specify the correct content type for your image.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜