【问题标题】:Serving local images with Play 2 / Scala使用 Play 2 / Scala 提供本地图像
【发布时间】:2013-08-10 12:12:21
【问题描述】:

我正在尝试找出一种在本地上传和提供文件(图像)的模式。我弄清楚了上传部分,但对存储和服务部分有点困惑。

我对如何使用“Ok.sendFile”在单个页面上显示本地存储的图像感到困惑。如何将其绑定到视图上的“img src”标签?我能想到的另一个选择是在本地运行一个(单独的)Web 服务器来存储文件,这没有多大意义。

【问题讨论】:

    标签: scala playframework-2.0


    【解决方案1】:

    只需在提供图像的控制器中添加一个动作:

    def picture(name: String) = Action {
    
       Ok.sendFile(new java.io.File(name)) // the name should contains the image extensions
    }
    

    然后在你的routes文件中添加对应的路由:

    GET /picture/:name  controllers.MyPictureController.picture(name: String)
    

    您的 HTML 应该如下所示:

    <img src="/picture/image.png">
    

    或者如果您使用 Scala 模板:

    <img src="@routes.controllers.MyPictureController.picture("image.png")">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-23
      • 1970-01-01
      • 2019-05-18
      • 1970-01-01
      相关资源
      最近更新 更多