【问题标题】:Static svg file not rendering from spark-java静态 svg 文件未从 spark-java 呈现
【发布时间】:2016-05-12 09:19:43
【问题描述】:

我是网络编程的新手,并且遇到了从 spark-java 2.5 提供静态 svg 文件的问题,如果我改用 python SimpleHTTP webserver,似乎不存在该文件。

从我的 spark-java 应用程序提供的 svg 图像文件不会在浏览器中呈现 - 而是显示缺失内容的标准图形。

我尝试过的:

  1. 如果我通过在浏览器中打开“http://localhost:4567/amcharts/images/dragIconRoundBig.svg”直接提供 svg,图像会呈现。
  2. 当通过以下 html(svg 元素的一部分)从我的 index.html 页面打开相同的图像文件时:

    <g aria-label="Zoom chart using cursor arrows" role="menuitem" 
         transform="translate(-7,3)" visibility="visible">
      <image x="0" y="0" width="35" height="35" xmlns:xlink="http://www.w3.org/1999/xlink" 
         xlink:href="http://localhost:4567/amcharts/images/dragIconRoundBig.svg"></image>
      <rect x="0.5" y="0.5" width="25" height="40" rx="0" ry="0" stroke-width="0" 
         fill="#000" stroke="#000" fill-opacity="0.005" stroke-opacity="0.005" 
         transform="translate(5,-2)"></rect>
    </g>
    

它不渲染。据我所知,没有 http 或其他错误。

  1. 如果我在不同的浏览器上重复第 2 步(尝试过 Chrome 和 Safari),或者在禁用 AddBlocker 之后,结果是一样的。

  2. 如果我使用 python 内置的 SimpleHTTP webserver 而不是 spark-java 重复第 2 步,提供相同的静态内容,则一切正常。

  3. 我比较了来自以下位置的 svg 文件的响应标头:

    火花-java:

    HTTP/1.1 200 OK
    Date: Wed, 11 May 2016 15:31:00 GMT
    Content-Encoding: gzip
    Transfer-Encoding: chunked
    Server: Jetty(9.3.6.v20151106)
    

    和python SimpleHTTP:

    Content-Length:679
    Content-type:image/svg+xml
    Date:Thu, 12 May 2016 07:46:02 GMT
    Last-Modified:Wed, 11 May 2016 13:42:27 GMT
    Server:SimpleHTTP/0.6 Python/2.7.9
    

问题可能是 spark-java 没有指定 Content-type 吗?这是因为它在分块吗?

我真正想知道的是如何让它发挥作用?

【问题讨论】:

  • 我遇到了类似的问题,Spark 无法正确设置静态元素的内容类型。我建议你用 spark 2.3 试试这个。请分享结果。
  • 使用 spark-java 2.3 时问题消失。 @Laercio,非常感谢您的建议。我还尝试了 2.4 版,并且可以报告该问题存在于那里以及 2.5 中。

标签: embedded-jetty spark-java


【解决方案1】:

暂时降级到 Spark 2.3。此问题已在 Github 进行跟踪。很快我们就可以升级到 spark 2.5。

【讨论】:

    【解决方案2】:

    我也遇到了同样的问题。但是 staticFiles.expireTime(ms); 呢?我找不到 2.3 中缓存的替代方法是什么

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-15
      • 2017-01-24
      • 2014-08-06
      • 2018-10-22
      • 2021-05-28
      • 2016-10-14
      相关资源
      最近更新 更多