Does iPhone/iPad Safari require 'Accept-Ranges' header for video?

后端 未结 2 962
[愿得一人]
[愿得一人] 2020-12-01 18:15

I\'ve been having problems serving videos from my dev server that play in mobile Safari. My dev server does not support the \'Accept-Ranges\' header and after reading a few

相关标签:
2条回答
  • 2020-12-01 18:59

    The answer above is helpful, but does not actually answer the question that was asked.

    According to the HTTP RFC, the Accept-Ranges header is optional even when byte-range requests are supported.

    However, the documented curl check implies that the answer is no: iOS does not require the Accept-Ranges header for video, but does require byte-range support with partial content (206) responses.

    Disclaimer: I haven't checked it on an actual device.

    0 讨论(0)
  • 2020-12-01 19:12

    I found some Apple documentation that says that it does in fact need that for video.

    HTTP servers hosting media files for iOS must support byte-range requests, which iOS uses to perform random access in media playback. (Byte-range support is also known as content-range or partial-range support.) Most, but not all, HTTP 1.1 servers already support byte-range requests.

    If you are not sure whether your media server supports byte-range requests, you can open the Terminal application in OS X and use the curl command-line tool to download a short segment from a file on the server:

    curl --range 0-99 http://example.com/test.mov -o /dev/null

    If the tool reports that it downloaded 100 bytes, the media server correctly handled the byte-range request. If it downloads the entire file, you may need to update the media server.

    Source: Apple Documentation

    0 讨论(0)
提交回复
热议问题