On Sun, 30 Dec 2012, Bill Thiede wrote: > > The Server-Sent Events at > http://www.w3.org/TR/2012/CR-eventsource-20121211/ states under the IANA > considerations / Security considerations section: > > "Servers can be overwhelmed if a situation develops in which the server > is causing clients to reconnect rapidly. Servers should use a 5xx status > code to indicate capacity problems, as this will prevent conforming > clients from reconnecting automatically." > > However, under section "5 Processing model" it is stated: > > "HTTP 500 Internal Server Error, 502 Bad Gateway, 503 Service > Unavailable, and 504 Gateway Timeout responses, and any network error > that prevents the connection from being established in the first place > (e.g. DNS errors), must cause the user agent to asynchronously > reestablish the connection." > > My guess is section 5 was updated more recently and the IANA section was > overlooked. I know there are 5xx errors not listed explicitly, which > would then trigger the "Any other HTTP response code not listed here > must cause the user agent to fail the connection," but I doubt that a > 501 or 505 are the suggested solution here.
Good catch. Since none of the browsers I could test reconnect for 500s currently as far as I can tell, I've changed the spec to not make 5xxs reconnect. The server load issue seems like a pretty big deal. It still says to reconnect in the case of an interrupted connection though, or if the connection couldn't be established in the first place, so going through a tunnel should still work fine. Updated text is at: http://whatwg.org/html#event-source-network-errors-reconnect > PS I'm emailing, because the 'Feedback Comments' form on the web page > returned 'ERROR' on my attempt to submit. Not sure who to notify of > that problem. The error reporting widget on the WHATWG spec above should work, FWIW. E-mail is fine too though. -- Ian Hickson U+1047E )\._.,--....,'``. fL http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,. Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'