Отправить пользовательский заголовок HTTP-запроса с аудио-тегом HTML5 - PullRequest
8 голосов
/ 15 февраля 2012

Можно ли отправлять пользовательские заголовки HTTP-запроса с помощью аудиотега HTML5? Я особенно заинтересован в отправке заголовка HTTP Range, поэтому веб-сервер будет транслировать только части mp3-файла. Я не смог найти способ сделать это в тэге api.

Ответы [ 3 ]

5 голосов
/ 03 апреля 2012

Не в соответствии с спецификацией , вы не можете. Аудио тег на самом деле очень негибкий.

3 голосов
/ 12 октября 2018

Если вы не поддерживаете старые браузеры, такие как IE, вы можете сделать это сейчас с сервисным работником.Перехватить запрос на выборку у работника сервиса и отправить его дальше с пользовательским заголовком.Вот базовый пример перехвата запроса к Google Drive и добавления токена Bearer.

self.addEventListener('fetch', function(event) {
  if(event.request.url === 'https://www.googleapis.com/drive/v3/files/fileID?alt=media') {
    event.respondWith(
        fetch(event.request.url, {
            method: "GET",
            headers: {
                "Authorization": "Bearer myBearerToken",
            },
            redirect: "follow"
        })
    );    
  }
});

Редактировать: 2018-11-17 - Добавлено, как это не будет работать со старыми браузерами.

0 голосов
/ 24 сентября 2018

Чтобы ответить на широкий вопрос ... это будет зависеть от того, какой именно запрос.

То, что вы хотите [ed] сделать, на самом деле очень возможно. Вы можете просто добавить #t=start[,end] Media Fragment к любому URL-адресу мультимедиа, и браузер будет знать, что он будет воспроизводиться только с этих временных отметок:

И поскольку я пришёл из будущего вопроса, который задавал вопрос об отправке авторизации вместе с медиа-запросом, вот ссылка на некоторые документы об атрибуте crossOrigin , который будет также сделайте ваш HTTP-запрос с «пользовательскими заголовками» .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...