"Accept-Ranges: bytes" no longer present in responses from Google Cloud Storage

1,201 views
Skip to first unread message

James Broberg

unread,
May 28, 2012, 1:03:02 AM5/28/12
to gs-dis...@googlegroups.com
Hi guys,

Since 24 May 2012, responses to GET requests no longer contain the appropriate header directive to signify that you support byte range serving ("Accept-Ranges: bytes"). We have a daily unit test that runs over Google Cloud Storage which checks the headers for this directive.

Is there a reason why this was removed and can it be added back? We depend on this capability - it's especially useful when serving up HTML5 video as it allows arbitrary seeking in the video without some fancy pants streaming server.

Many thanks,

James

Navneet (Google)

unread,
May 28, 2012, 9:47:00 AM5/28/12
to gs-dis...@googlegroups.com
Hi James,

We'll look into this. 

So we understand the issue better -  are byte range serving requests failing, or is it just the header that's missing? If the latter, could you help me understand the mechanisms that rely on the header (vs the functionality)?

Thanks,
Navneet


--
You received this message because you are subscribed to the Google Groups "Google Cloud Storage" group.
To view this discussion on the web visit https://groups.google.com/d/msg/gs-discussion/-/ojI7cWSNF5YJ.
To post to this group, send email to gs-dis...@googlegroups.com.
To unsubscribe from this group, send email to gs-discussio...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gs-discussion?hl=en.

James Broberg

unread,
May 28, 2012, 9:28:54 PM5/28/12
to gs-dis...@googlegroups.com
Hi Navneet,

To give a bit more background:

"Accept-Ranges: bytes" is super useful for situations like HTML5 video playback (e.g. mp4, ogg, webm) on browsers like Chrome and Firefox - they look for it to check if byte range is supported, then do a byte range request to seek to the end of the file and check the duration of the file. You can then start playing a video straight away. If the server does not advertise the fact, playback is crappy as it can't stream/play straight away as it has to buffer the whole file to figure out the duration.

This is a very useful function - I know "Accept-Ranges: bytes" is not mandatory according to the HTTP spec but it is useful to advertise the fact that Google Cloud Storage does support byte range requests. Google Cloud Storage did this until a few days ago and had been doing it for some time!

Useful reference:

Thanks

James


On Monday, May 28, 2012 11:47:00 PM UTC+10, Navneet (Google) wrote:
Hi James,

We'll look into this. 

So we understand the issue better -  are byte range serving requests failing, or is it just the header that's missing? If the latter, could you help me understand the mechanisms that rely on the header (vs the functionality)?

Thanks,
Navneet
On Sun, May 27, 2012 at 10:03 PM, James Broberg wrote:
Hi guys,

Since 24 May 2012, responses to GET requests no longer contain the appropriate header directive to signify that you support byte range serving ("Accept-Ranges: bytes"). We have a daily unit test that runs over Google Cloud Storage which checks the headers for this directive.

Is there a reason why this was removed and can it be added back? We depend on this capability - it's especially useful when serving up HTML5 video as it allows arbitrary seeking in the video without some fancy pants streaming server.

Many thanks,

James

--
You received this message because you are subscribed to the Google Groups "Google Cloud Storage" group.
To view this discussion on the web visit https://groups.google.com/d/msg/gs-discussion/-/ojI7cWSNF5YJ.
To post to this group, send email to gs-dis...@googlegroups.com.
To unsubscribe from this group, send email to gs-discussion+unsubscribe@googlegroups.com.

James Broberg

unread,
May 28, 2012, 9:56:00 PM5/28/12
to gs-dis...@googlegroups.com
Navneet:

To directly answer your question, if you do a byte range request directly it seems to work (e.g. via curl), however many applications (such as FF/Chrome w/ HTML5 video) are not smart enough to do that if it is not advertised by the "Accept-Ranges: bytes" header.

-James

Navneet Joneja

unread,
May 28, 2012, 11:58:04 PM5/28/12
to gs-dis...@googlegroups.com
Thanks, James. We'll look into this.
- Navneet

To view this discussion on the web visit https://groups.google.com/d/msg/gs-discussion/-/uz1HiqlF6EcJ.

To post to this group, send email to gs-dis...@googlegroups.com.
To unsubscribe from this group, send email to gs-discussio...@googlegroups.com.
Message has been deleted

Navneet (Google)

unread,
May 30, 2012, 4:51:58 PM5/30/12
to gs-dis...@googlegroups.com
James,

The Accept-Ranges header should now be returned in GET responses.

Thanks,
Navneet
Reply all
Reply to author
Forward
0 new messages