如何在play框架2中提供动态内容

时间:2012-12-19 08:03:16

标签: scala playframework-2.0

我有一个应用程序,其中一些图像将根据用户输入动态创建,我需要将这些图像发送回用户的浏览器。一旦用户离开页面,图像就会打开,图像将不再需要,所以我只需要它们足够长的时间来为它们服务。

我理解如何在控制器中使用Ok(sendFile(...))Ok(stream(...))来发送图像数据,但我无法理解的是我如何指定{{src的路径在img标记中添加1}}。更明确地说,我认为我会有类似

的东西
<img src=@routes.Controllers.serveImage(...) />

我模板中的某处。

理想情况下,我不必创建临时文件来保存图像,因为这可能不需要发生很多输入/输出,尽管它似乎是获取唯一标识符的最简单方法可以传递给serveImage控制器。

如果我尝试从内存中提供图像,我将如何为图像提供唯一的ID,确保在Web浏览器要求时它在内存中可用,并在不再需要时将其删除?

谢谢! 托德

1 个答案:

答案 0 :(得分:3)

生成unique ids is quite simple

“从内存中提供图像,[...]在不再需要时将其删除”部分听起来很像缓存给我。 Play为此提供Caching API