Загрузить компоненты - Upload components

Загрузить компоненты - это программные продукты, которые предназначены для встраивания в веб-сайт с целью добавления на него функций загрузки. Компоненты загрузки предназначены для замены стандартных HTML 4 механизма загрузки. По сравнению с HTML4, компоненты загрузки имеют более удобный интерфейс и поддерживают более широкий спектр функций.

Загрузка файлов HTML

Стандарт HTML4 поддерживает запросы данных, которые должны быть запрошены с клиентского компьютера и загружены на сервер. Стандартный механизм передачи данных этого типа - HTML-формы.[1][2] С помощью HTML-форм файлы пользователя могут быть загружены с помощью тег с разными атрибутами. Этот метод позволяет разработчикам веб-сайтов реализовать базовые функции загрузки. Однако у него есть следующие недостатки:

  • Загрузка нескольких файлов недоступна - пользователь может загружать только 1 файл за раз.
  • Ограниченный размер загрузки - обычно невозможно отправить файлы размером до десятков мегабайт (МБ) через HTTP.
  • Оптимизация перед загрузкой файлов недоступна.
  • Плохая визуализация - пользователь не видит никакой информации о процессе загрузки и расчетном времени загрузки.
  • Предварительный просмотр выбранных файлов не поддерживается.
  • Неуклюжий вид - неудобный способ, которым пользователь выбирает файлы для загрузки.

Альтернативы загрузки HTML

Компоненты загрузки позволяют обойти ограничения и недостатки загрузки HTML, отмеченные ранее. Компонент загрузки - это плагин который позволяет загрузка файлы от клиента к сервер. Обычно компоненты загрузки разрабатываются сторонними компаниями и могут быть интегрированы с любым веб-сайтом на любом Платформа. Пользователь веб-браузер будет отображать встроенный компонент загрузки как часть веб-страницы. Компоненты загрузки могут быть построены с использованием различных технологий: вспышка, Silverlight, Ява, ActiveX, и HTML5.

В W3C Сообщество находится в процессе разработки стандарта HTML5, полная спецификация которого ожидается к 2014 году.[3] HTML5 должен поддерживать мультимедийный контент без каких-либо плагинов или компонентов. Для функции загрузки новый HTML5 API [4] предлагает широкий спектр новых функций, включая доступ к файловой системе клиента и динамическое создание запросов и обработку изображений.

Новые функции HTML5 могут стать хорошей основой для реализации компонентов загрузки со сложным пользовательским интерфейсом и возможностью загрузки любого объема данных. К сожалению, на данный момент браузеры частично и по-разному поддерживают эти функции, что является серьезным препятствием. Ситуация усугубляется, если мы вспомним, что большое количество пользователей все еще используют Windows XP (28%)[5] и устаревшие Internet Explorer версии (11%).[6]

Технологии создания компонентов загрузки

Компоненты загрузки могут быть разработаны на основе различных технологий, направленных на расширение функциональности браузера. В зависимости от технологии и ее функций компоненты загрузки могут поддерживать большую или меньшую функциональность, быть более или менее настраиваемыми и более простыми в использовании.

ТехнологииБраузерыОперационные системыМобильная ОСТребования к клиентскому ПО
Апплеты JavaInternet Explorer, Firefox, Chrome, Safari, OperaWindows, Mac OS X, LinuxНикакой поддержкиJava-машина
Управление вспышкойInternet Explorer, Firefox, Chrome, Safari, OperaWindows, Mac OS X, LinuxНикакой поддержкиFlash Player
Элементы управления Silverlight

Технологии Microsoft предпочтительнее

Internet Explorer, Firefox, Chrome, Safari, OperaWindows, Mac OS X, Linux (Moonlight)Никакой поддержкиПлагин Silverlight
HTML5 элементы управленияChrome, Firefox, Opera, Safari, Internet Explorer,

Ограниченная поддержка

Windows, Mac OS X, LinuxiOS, Android, Windows Phone 7,

Ограниченная поддержка

HTML5-совместимый веб-браузер
Элементы управления ActiveXInternet ExplorerWindowsникакой поддержкиInternet Explorer

Ява

Апплеты Java компоненты, работающие в веб-браузер. Они разработаны в виде Ява байтовый код. Апплеты поддерживаются большинством современных операционные системы и браузеры. Java-апплеты имеют высокая производительность аналогично установленному программному обеспечению. Аплеты Java подписанный с сертификатами безопасности, чтобы стать доверенным программным обеспечением, которое позволяет автоматически распространять с веб-сайта и устанавливать на клиентских компьютерах.

вспышка

Компоненты загрузки могут быть реализованы как Adobe Flash контроль. Flash - это платформа для запуска мультимедийных приложений в Интернете. 24% всех веб-сайтов используют компоненты Flash,[7] а Flash-плеер установлен на 99% компьютеров с выходом в Интернет.[8] Flash - это кроссплатформенная и кросс-браузерная технология, которая позволяет компонентам загрузки Flash работать в различных браузерах, за исключением мобильные платформы.

Silverlight

Другой тип компонентов загрузки: Silverlight это технология Microsoft, требующая установки подключаемого модуля браузера. По функциям он очень похож на Adobe Flash и поддерживается большинством современных браузеров и операционных систем. Существуют версии Silverlight для Windows и Mac OS X, а также есть версия для Linux называется Свет луны. Silverlight - одна из основных технологий, используемых для Windows Phone разработка приложений.

HTML5

HTML5 - это новый стандарт HTML, разработанный для добавления в HTML поддержки мультимедиа. Поддерживается в Windows, Mac OS X, Linux, iOS, Android и Windows Phone. Поскольку формат все еще находится в стадии разработки, а некоторые функции, используемые для загрузки файлов, все еще не являются частью стандарта, компоненты загрузки HTML5 в настоящее время не распространены. Их поддержка ограничена подмножеством браузеров.

Настольные браузеры Поддержка HTML5

Поддержка HTML5 постоянно улучшается. Наилучший охват возможностей HTML5 обеспечивается последней версией Хром, Fire Fox, Сафари и Опера. Internet Explorer обеспечивает наименьшую поддержку. Internet Explorer 10 имеет меньшую поддержку, чем версии других браузеров; однако покрытие будет вдвое лучше, чем Internet Explorer 9.[требуется разъяснение ]

Мобильные платформы Поддержка HTML5

iOS 5 имеет достаточно высокий уровень поддержки HTML5; однако его уровень поддержки остается ниже, чем у настольных браузеров.

Windows Phone 7.5 «Манго» имеет небольшую поддержку HTML5, что делает его сопоставимым с отсутствием поддержки стандарта в Internet Explorer 9 для настольных ПК.

Последний Android 5.0 поддерживает гораздо больше возможностей HTML5, чем Windows Phone, но меньше, чем iOS.

Поддержка HTML5 в мобильных браузерах все еще продолжается.[9][10]

Функции, недоступные при стандартной загрузке HTML4

Компоненты загрузки предоставляют дополнительные функции и удобство для пользователя, которые не могут быть предоставлены чистым HTML4.

Индикатор
Индикаторы прогресса используются для информирования пользователей о деталях процесса загрузки. Компоненты загрузки поддерживают индикаторы выполнения, отображающие такие параметры, как имена файлов, размеры файлов, скорость загрузки и т. Д.
Загрузка нескольких файлов и папок
Некоторым веб-сайтам требуется поддержка одновременной загрузки нескольких файлов. Эта функция чрезвычайно важна для загрузки компонентов на социальные сети, фотогалереи, обмен файлами и т. д. Стандартный подход HTML4 громоздок. Компоненты загрузки поддерживают загрузку нескольких файлов более гибким образом, например, позволяя более простой выбор файлов для одновременной загрузки из нескольких папок.
Загрузка огромных файлов
Загрузка огромного объема данных всегда является проблемой, поскольку размер запроса может быть слишком большим для успешного завершения процесса загрузки, возможно, из-за медленных или нестабильных Интернет-соединений. На стороне сервера могут применяться ограничения на максимальный размер HTTP-запросов. Компоненты загрузки должны найти баланс между потребностями клиента, с одной стороны, и ресурсами и ограничениями сервера и канала, с другой. В случае доставки огромных файлов на серверные компоненты так называемая «загрузка фрагментов» делит файл на несколько частей (фрагментов) до начала процесса загрузки. Каждый фрагмент отправляется в ответ на один запрос; после того, как все фрагменты поступают на сервер, исходный файл собирается заново.
Безопасная загрузка
Во время процесса загрузки могут возникнуть непредвиденные проблемы или сбои, что приведет к сбою загрузки и повреждению файла. Для решения этих проблем компоненты загрузки имеют отказоустойчивые механизмы, обладающие такими функциями, как автоматическое возобновление процесса загрузки, отправка файлов по отдельности в одном пакете и загрузка фрагментов.
Отправка дополнительных данных вместе с файлами
Иногда бывает полезно отправить вместе с файлом дополнительные данные, например, информационные описания или Exif /IPTC поля или Хеш-суммы чтобы определить, был ли файл поврежден или поврежден в процессе загрузки.
Параллельная загрузка
Компоненты загрузки могут иметь функцию одновременной загрузки - отправка пакетов загрузки несколькими потоки. В некоторых случаях процесс загрузки выигрывает за счет увеличения общей скорости загрузки, уменьшения времени загрузки и более эффективного использования ресурсов компьютера.
Мгновенная загрузка
Такой подход позволяет начинать загрузку файлов сразу после их добавления в очередь загрузки.
Загрузить в облачное хранилище
Компоненты загрузки могут загружать файлы в облачное хранилище.
Перетаскивание
Перетаскивание это форма пользовательской программы графический интерфейс взаимодействие, которое включает выбор одного объекта и перетаскивание его на другой объект. Drag-n-Drop широко распространен, так как помогает увеличить юзабилити.
Настраиваемый внешний вид
Компоненты загрузки поддерживают настройку внешнего вида компонентов в соответствии с дизайном веб-сайта с помощью таких конфигураций, как стили шрифтов, размеры, цвета или режимы просмотра среди прочего.
Локализация
Когда компонент загрузки выходит на международный рынок, ему требуется поддержка перевода текстовых меток и сообщений интерфейса на другие языки. Обычно загружаемые компоненты имеют настраиваемую поддержку для наиболее широко используемые языки. Пользовательский интерфейс также может быть многоязычным.[требуется разъяснение ] Для некоторых языков, например иврит процесс локализации включает не только перевод, но и переключение на стиль с письмом справа налево.
Проверка файлов на стороне клиента
Чтобы сохранить ресурсы на стороне сервера, компоненты загрузки могут применять проверку на стороне клиента к файлам, выбранным для загрузки в нескольких группах: типы файлов (которые могут быть выборочно определены или запрещены разработчиком), размер файла (который может быть установлен на минимальный / максимальный допустимый размеры) и размер изображения (для которого можно указать минимальный / максимальный размер среди других параметров).

Загрузка изображения

Компоненты загрузки используются для загрузки изображений, поэтому есть компоненты, которые имеют дополнительные функции для обработки перед загрузкой изображений.

Изменить размер
Фотографии, сделанные современными цифровыми фотоаппаратами высокое разрешение, но большинству веб-сайтов требуется изображения изменены для экономии полосы пропускания. Компоненты загрузки позволяют автоматически изменять размер и загружать изображения с исходным файлом или без него, или копию эскиза для использования в качестве аватара и т. Д.
Повернуть
Образ вращение - очень важная функция для веб-сайтов, предоставляющая пользователям базовые возможности редактирования изображений. Изображения либо автоматически поворачиваются (на основе данных Exif), либо пользователю разрешается вручную вращать изображение.
Обрезать
Обрезать позволяет пользователям выбрать часть изображения, которую следует где-то сохранить или распечатать. При кадрировании удаляются внешние части изображения, чтобы выделить какой-либо объект на изображении или изменить соотношение сторон.[требуется разъяснение ]
Водяные знаки
А водяной знак представляет собой текстовое сообщение или изображение, помещенное поверх исходного изображения, и используется для защиты интеллектуальной собственности или указания важной информации, такой как дата создания изображения, текстовые комментарии или авторские права. Компоненты загрузки могут включать функцию добавления водяных знаков ко всем загруженным изображениям.
Метаданные Exif / IPTC
Изображения могут содержать метаданные в различных форматах, например Exif или IPTC.
Поля Exif включают информацию с устройства, которое захватило файл изображения: параметры камеры, дату и место, где было снято изображение, экспозицию, параметры объектива, данные GPS и другие.[11]
Поля IPTC содержат более конкретные данные, касающиеся авторства изображения.[12] Для компонентов загрузки крайне важно сохранить исходные метаданные изображения в процессе загрузки.
Измеритель качества
Измеритель качества - это визуальный индикатор, показывающий качество изображения (dpi, ширина, высота), и это помогает пользователю решить, достаточно ли хорошее изображение для использования. Примером использования измерителя качества может быть веб-сайт для печати фотографий со встроенным компонентом загрузки, который уведомляет пользователей, если разрешение изображения не подходит для его печати в выбранном формате.

использованная литература

  1. ^ "Загрузка файла на основе формы RFC 1867 в HTML".
  2. ^ «HTML-формы и ввод».
  3. ^ «Рабочий проект HTML5 W3C».
  4. ^ «Спецификации W3C HTML5 API».
  5. ^ «Статистика ОС W3C».
  6. ^ «Статистика браузера W3C».
  7. ^ «Обзоры веб-технологий W3C. Использование Flash для веб-сайтов».
  8. ^ «Статистика Adobe Flash. Проникновение на ПК».
  9. ^ «Статистика поддержки HTML5».
  10. ^ "Статистика поддержки BrowserScope HTML5".
  11. ^ «Спецификация Exif».
  12. ^ «Спецификация IPTC». Архивировано из оригинал на 2012-06-16. Получено 2012-06-15.