Существует два способа отображения: с помощью подключаемого модуля, плагина( plug-in), или вспомогательных приложений. Подключаемый модуль представляет собой особый сторонний код, который браузер извлекает из специального каталога на жестком диске и устанавливает в качестве своего расширения, как показано на рис. 7.8, а. Стандартными примерами являются плагины для PDF, Flash и Quick-time, позволяющие работать с документами и проигрывать аудио и видео. Поскольку подключаемые модули работают внутри браузера, у них есть доступ к текущей странице, вид которой они могут изменять. После завершения своей работы (обычно это связано с переходом пользователя на другую страницу), подключаемый модуль удаляется из памяти браузера.

Рис. 7.8.Браузер с подключаемым модулем (а); вспомогательное приложение (б)
Каждый браузер имеет набор процедур, которые должны реализовывать все подключаемые модули. Это нужно для того, чтобы браузер мог обращаться к последним. Например, существует стандартная процедура, с помощью которой базовый код браузера передает подключаемому модулю данные для отображения. Набор этих процедур образует интерфейс подключаемого модуля и является специфичным для каждого конкретного браузера.
Кроме того, браузер предоставляет подключаемому модулю определенный набор своих процедур. Среди них в интерфейс браузера обычно включаются процедуры распределения и освобождения памяти, вывода сообщений в строке статуса браузера и опроса параметров браузера.
Перед использованием подключаемого модуля его нужно установить. Этот процесс подразумевает, что пользователь копирует с веб-сайта производителя модуля установочный файл. Запуск установочного файла распаковывает подключаемый модуль, регистрирует в браузере MIME-тип и ассоциирует этот тип с модулем. Обычно в браузерах заранее загружены популярные плагины.
Вторым способом расширения возможностей браузера является использование вспомогательных приложений( helper application). Вспомогательное приложение — это полноценная программа, работающая как отдельный процесс. Это показано на рис. 7.8, б. Поскольку она никак не связана с браузером, между ними отсутствует какой бы то ни было интерфейс. Вспомогательное приложение обычно принимает от браузера имя временного файла, содержащего данные для отображения, открывает файл и отображает контент. Обычно в роли вспомогательных приложений выступают большие программы, которые существуют отдельно от браузера, например Microsoft Word или PowerPoint.
Многие вспомогательные приложения используют MIME-тип application (приложение). В результате было определено существенное число подтипов, например application/vnd.ms-powerpoint для файлов PowerPoint; vnd обозначает формат, зависящий от поставщика. Таким образом, URL может напрямую указывать на файл PowerPoint, и когда пользователь щелкает на нем, автоматически загружается PowerPoint, обрабатывает нужный файл и отображает его. Вспомогательные приложения могут пользоваться не только MIME-типом application. Так, например, Adobe Photoshop использует image/x-photoshop.
Получается, что браузер можно настроить на обработку практически любого количества типов файлов, не внося в него никаких изменений. Современные веб-серверы часто содержат сотни комбинаций типов и подтипов файлов. Новые типы файлов появляются всякий раз при установке новых программ.
Источником конфликтов является то, что большое количество плагинов и вспомогательных приложений могут обрабатывать один и тот же подтип, например video/mpg . В результате программа, которая регистрируется последней, затирает своей записью существующую ассоциацию с типом MIME и оставляет его за собой. Следствием этого является то, что каждая устанавливаемая программа может изменить метод отображения браузером некоторых типов.
Браузеры могут работать и с локальными файлами без соединения с сетью, не запрашивая информацию с удаленных серверов. Однако браузеру нужно каким-то хитрым образом определить MIME-тип файла. Стандартный метод заключается в ассоциировании на уровне операционной системы расширения файла с типом MIME. В стандартной конфигурации попытка открыть файл foo.pdf приведет к его открытию в браузере с использованием плагина application/pdf, а файл bar.doc будет открыт во вспомогательном приложении Word.
Читать дальше
Конец ознакомительного отрывка
Купить книгу