Вы можете сделать это на клиенте с HTML5. Для старых браузеров, которые не поддерживают File и FileReader, у вас должен быть соответствующий резервный сервер.
Вы можете написать свой собственный анализатор exif или использовать библиотеку jsjpegmeta (Бен Лесли), которая представляет собой простую + потрясающую библиотеку, которая позволяет браузеру извлекать данные EXIF из большинства файлов jpeg. Существует патч , в котором говорится, что он устраняет большинство проблем с совместимостью. Я не тестировал патч, но будьте готовы раскошелиться на проект и надеть шапку Github.
Чтобы получить EXIF:
- Диалог открытия файла: Я обычно создаю кнопку, которая вызывает функцию для генерации ввода
<file
и добавляет обработчик изменений
- Получить файлы: В обработчике изменения файла ue
$(this).get(0).files
, чтобы получить список выбранных файлов.
- Анализ данных exif: Отправка результатов просмотра в jsjpegmeta
Мне пришлось немного настроить библиотеку, чтобы заставить ее делать то, что я хотел (я хотел общую библиотеку JS). Я также сделал настройку, определенную в выпуске 1.
Вот скрипка