【问题标题】:Serving local images with Play 2 to be displayed inline使用 Play 2 提供本地图像以内联显示
【发布时间】:2013-12-14 08:15:56
【问题描述】:

之前我在这里询问如何提供本地图片:Serving local images with Play 2 / Scala

这很好用,只是图片被浏览器强制下载,而不是显示在浏览器中。

我在 OK.sendFile 中添加了“inline = true”参数,如下所述:http://www.playframework.com/documentation/2.2.x/ScalaStream,但这似乎不起作用,图像仍在下载中。似乎内容类型没有得到认可?播放文档说它应该使用文件扩展名自动设置它,所以不确定发生了什么。帮助?

编辑:响应标头示例:

HTTP/1.1 200 正常

内容长度:2694220

内容类型:应用程序/八位字节流

【问题讨论】:

  • 粘贴此请求产生的所有响应标头(使用一些检查工具在浏览器中获取它(
  • @biesior : HTTP/1.1 200 OK Content-Length:2694220 Content-Type: application/octet-stream

标签: scala playframework-2.0


【解决方案1】:

查看 Play 的代码,我意识到我可以简单地将 .withHeaders 添加到 sendFile:

Ok.sendFile(content = new java.io.File("filepath"), inline = true).withHeaders(CONTENT_TYPE -> "image/jpeg")

这解决了问题!感谢@biesior 的指点。

【讨论】:

    猜你喜欢
    • 2013-08-10
    • 2019-08-26
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 2012-07-09
    相关资源
    最近更新 更多