&符号中的&符号(&):SVG图像的href属性?

Pet*_* K. 7 svg urlencode xlink ampersand query-string

我正在构建一个包含各种图像标记的SVG文档.图像的xlink:href(源URL)属性包含带有&符号的查询字符串.如果我将它们作为%26或ascii编码? 它们不是有效的查询字符串,服务器也不会传递图像.我无法用CDATA逃避它们,因为它们是属性(不是节点).我已经尝试在图像标记中创建一个xlink:href节点,但是SVG解析器会忽略它.我想使用纯SVG(而不是HTML中的SVG),以便我可以在以后转换为JPG,因此编写脚本...

关于我如何能够完成以下工作的任何提示?

<image x="0" y="0" width="306" height="306" xlink:href="http://host.com/image.jpg?token=asdf&expiration=9384029&etc=etc"/>
Run Code Online (Sandbox Code Playgroud)

谢谢!

Phr*_*ogz 5

在所有 XML 应用程序(包括 SVG)中,以下实体在没有自定义 DTD 的情况下也是有效的:

  • &amp;- &
  • &gt; - >
  • &lt; - <

在你的情况下,这应该可以工作,而无需诉诸丑陋的 ASCII hack:

<image xlink:href="http://foo.com/bar.jpg?token=asdf&amp;exp=9384&amp;etc=etc"/>
Run Code Online (Sandbox Code Playgroud)


Pet*_* K. 4

解决方案是将&符号替换为正确的ascii代码#38不是 #63(这是一个问号“?”),正如我在误读此问题后最初尝试的那样:使用“?” 在 SVG href 中

感谢Stunti /sf/users/3846461/

http://www.ascii.cl/htmlcodes.htm