Я втяну Facebook в разговор.Facebook использует Java для этого.
Я должен отметить, что вы НЕ можете напрямую обращаться к жесткому диску пользователя в JavaScript.Это включает в себя чтение, запись, копирование, флаг, что угодно.Это было бы неплохо с точки зрения безопасности, даже если большинство из нас, кто хотел сделать это [включая меня два года назад], имеют хорошие намерения.
Теперь, некоторые браузеры (кашель IE) действительно позволяют вам получить доступ кфайловая система пользователя через ActiveX, после того, как они нажимают «разрешить activex» ... но это не кросс-браузер / кроссплатформенность, поэтому я бы не рекомендовал это.Проверьте: Scripting.FileSystemObject, fopen
Однако пользователь может загрузить файл на свой сервер, временно загрузить этот файл на стороне клиента, сделать все, что угодно, сохранить файл насервер, и загрузите изображение пользователю с заголовком mime "content" из "application / force-download" ...