Open Bug 196568 Opened 18 years ago Updated 8 years ago

HTTP "Refresh" should be honored for inline content [allowing periodic client pull of new image]


(Core :: ImageLib, enhancement)

Windows XP
Not set




(Reporter: david, Unassigned)


User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3b) Gecko/20030210
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.3b) Gecko/20030210

If a web page contains an inline image, and that image is served with a HTTP
Refresh header, the image should be refreshed as requested by this header
(independently of the rest of the content on the page).

Reproducible: Always

Steps to Reproduce:
1. Visit a web page that contains an inline image served with a HTTP Refresh header
2. Observe the lack of a refresh

Actual Results:  
No refresh occurred.

Expected Results:  
The image should have been refreshed.

Granted, the "Refresh" header doesn't seem to be standardized (deferred for
HTTP/1.2 or later?), but if it works for images requested by themselves, it
should do the same for images requested as part of a document.  This is mainly a
consistency thing that would be nifty.
if you have the power to insert a response header, why not make this a real HTTP
redirect?  even the HTML 4 spec says that refresh in a meta tag should be avoided.
The goal isn't to redirect or change the URL, it's to effect a periodic refresh
(client pull) of the resource.  In the case of an image, the server is
effectively saying the image will change and that the browser should re-retrieve it.

This works today if you view the image alone in your browser window (not within
a document).  The browser loads the image and will refresh it every N seconds. 
I would just like to see this behavior extended so that objects loaded within a
document are refreshed just as they would be if they were stand-alone.
ah, of course.  does this trick work with IE?
at any rate, if this bug is going to get fixed, it would have to be fixed by
imagelib or someone higher up.

-> imagelib
Assignee: darin → jdunn
Component: Networking: HTTP → ImageLib
Ever confirmed: true
QA Contact: httpqa → tpreston
Summary: HTTP "Refresh" should be honored for inline content → HTTP "Refresh" should be honored for inline content [allowing periodic client pull of new image]
IE 6 seems to behave like Mozilla in this respect: the resource is only
refreshed when it's the top-most resource (not within a document).

I also might argue that this not be limited to just images, but any external
entity embedded within a document.  If it comes with an HTTP "Refresh" header,
the browser ought to refresh it as requested.

This could get ugly, with the potential for JavaScript to be refreshed (and
what, re-executed?), CSS (could make for interesting effects), audio (might be
semi-useful there), etc.  It seems unfair to look strictly at images when the
Refresh is being requested more at the HTTP layer, which could be anything.
good point about this applying to more than just images, but this really can't
be handled at the HTTP level since networking can't cause layout elements to
redraw.  (it might be possible for HTTP to fake a meta refresh into looking like
a multipart/x-mixed-replace load... that might work... though, it conflicts with
normal handling of the refresh header for toplevel pages.)  networking just
doesn't have the right level of contextual information to implement this sort of
stuff in a good way.
Assignee: jdunn → nobody
QA Contact: tpreston → imagelib
You need to log in before you can comment on or make changes to this bug.