We're calling on all EU-based Mozillians with iOS or iPadOS devices to help us monitor Apple’s new browser choice screens. Join the effort to hold Big Tech to account!

Търсене в помощните статии

Избягвайте измамите при поддръжката. Никога няма да ви помолим да се обадите или изпратите SMS на телефонен номер или да споделите лична информация. Моля, докладвайте подозрителна активност на "Докладване за злоупотреба".

Научете повече

How does Firefox handle xml:base when generating GET requests for SVG image elements?

  • 1 отговор
  • 1 има този проблем
  • 6 изгледи
  • Последен отговор от cor-el

more options

I am loading an SVG image at the following URL:

http://localhost/howl/svg/id/543

The source for this SVG code is:

<svg xml:base="/howl/">

 <svg width="535" height="325" xmlns="http://www.w3.org/2000/svg"

xmlns:xlink="http://www.w3.org/1999/xlink">

   <image xlink:href="file/id/532" />
 </svg>

</svg>

As you can see, the SVG code is located at one path, but the <image> is relative to the root, hence the wrapping xml:base attribute.

The actual requests in Firefox, according to Tomcat Logging are:

GET /howl/svg/id/543 GET /howl/file/id/532

However, Firebug's Net tab shows these requests:

GET /howl/svg/id/543 GET /howl/svg/id/file/id/532 (Incorrect, doesn't happen) GET /howl/file/id/532

When I test the same thing in Safari and Chrome, all three GET requests actually happen, the incorrect one resolving in a 404.

I suspect that Firefox is generating all three requests, but discarding the incorrect one and Firebug is not aware of this. As a result, Firebug shows all three requests, but the incorrect one never resolves.

So, I'm curious about the behavior or whether I am doing this incorrectly.

Thanks!

I am loading an SVG image at the following URL: http://localhost/howl/svg/id/543 The source for this SVG code is: <svg xml:base="/howl/"> <svg width="535" height="325" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <image xlink:href="file/id/532" /> </svg> </svg> As you can see, the SVG code is located at one path, but the <image> is relative to the root, hence the wrapping xml:base attribute. The actual requests in Firefox, according to Tomcat Logging are: GET /howl/svg/id/543 GET /howl/file/id/532 However, Firebug's Net tab shows these requests: GET /howl/svg/id/543 GET /howl/svg/id/file/id/532 (Incorrect, doesn't happen) GET /howl/file/id/532 When I test the same thing in Safari and Chrome, all three GET requests actually happen, the incorrect one resolving in a 404. I suspect that Firefox is generating all three requests, but discarding the incorrect one and Firebug is not aware of this. As a result, Firebug shows all three requests, but the incorrect one never resolves. So, I'm curious about the behavior or whether I am doing this incorrectly. Thanks!

Всички отговори (1)

more options

A good place to ask questions and advice about web development is at the mozillaZine Web Development/Standards Evangelism forum.
The helpers at that forum are more knowledgeable about web development issues.
You need to register at the mozillaZine forum site in order to post at that forum.

See http://forums.mozillazine.org/viewforum.php?f=25