2012-09-14 1 views
1

Я работаю над расширением сафари, и я хочу, чтобы он был уведомлен до появления окна загрузки. Поскольку нет загрузки для загрузки, я думаю, что мне нужно обработать заголовки ответов, но я также не смог получить к ним доступ. Мне было интересно, как правильно это сделать?Уведомление об обновлении Safari перед загрузкой

С уважением

+0

Является ли это расширением того, что будет работать на/любой странице? Или по конкретным? Если второй, вы можете добавить событие onclick в ссылку для загрузки. –

+0

Он будет работать на любой странице. –

ответ

0

Из моего ограниченного опыта мастерить с Safari и Chrome расширений, я считаю, нужно слушать страницу, чтобы выстрелить либо (или оба) из этих событий: beforeLoad и beforeNavigate. Работа с beforeLoad описана очень хорошо в разделе blocking content, а beforeNavigate описано here.

С помощью любого из этих событий вам необходимо определить, является ли рассматриваемый URL-адресом загружаемым или обычным веб-файлом. Я подозреваю, что вы можете быстро проверить общие типы файлов загрузки, такие как .zip, .mp3 и другие, но единственным способом быть уверенным может быть выполнение собственного короткого HTTP-запроса и анализ ответа, как вы отметили в своем вопросе ,

Внимание! Для обнаружения загрузок нет API-интерфейсов, поскольку в любом случае расширения на файловом компьютере практически не работают. Это означает, что загрузка обычно должна выходить за рамки расширений, а вместо этого - ответственность приложений на платформе.