Я создаю загрузчик фотографий. Когда пользователь выбирает фотографию из <input type="file">
Я использую jquery для отправки выбранного файла от пользователя на свой сервер, сервер сохраняет это изображение на диск и создает эскиз.
Сервер возвращает URL-адрес миниатюры клиенту.
Затем jquery отображает изображение пользователю. Это клиент/сервер.
Теперь, могу ли я показать миниатюру выбранного файла у пользователя, не отправляя его на сервер?
(Как Facebook-загрузчик Facebook, нам не нужно нажимать "Предварительный просмотр", чтобы просмотреть эскиз выбранной фотографии. Facebook делает это для нас)
Вы можете использовать FileReader API, см. Демонстрацию из этого ответа:
var oFReader = new FileReader();
oFReader.readAsDataURL(document.getElementById("uploadImage").files[0]);
oFReader.onload = function (oFREvent) {
document.getElementById("uploadPreview").src = oFREvent.target.result;
};
да, вы можете поддерживать только современные браузеры.
Вы ищете FileReader
Взгляните на этот быстрый учебник, который также включает демонстрацию (реализованный API FileReader) и индикатор выполнения.