Я работаю над веб-приложением, которое потенциально будет использоваться в средах с нестабильным подключением к Интернету. Я реализую его как автономное приложение HTML5, которое будет использовать локальное хранилище HTML5 (на самом деле jQuery plug-in jStorage). Это приложение, управляемое данными, поэтому все новые записи, созданные во время автономной работы, сохраняются в локальном хранилище и позже будут синхронизированы с сервером при восстановлении подключения к Интернету. Я почти получил эту работу, но теперь мне приходится требовать, когда пользователям действительно нужно загрузить изображение вместе с представлением ввода данных.
Я нашел этот API API HTML5 - http://www.w3.org/TR/file-upload/, в котором говорится о загрузке файлов и автономном доступе. Прежде чем я углубится в это - есть ли какие-то обертки вокруг этой функции, которые упростили бы это для меня?
Я также нашел эту статью - http://hacks.mozilla.org/2010/02/an-html5-offline-image-editor-and-uploader-application/ который использует общедоступный API TwitPic, и я хотел получить от вас отзывы от людей.
Спасибо!
Загрузка файлов в офлайн-приложениях HTML5
Ответ 1
Я знаю, что прошло некоторое время с тех пор, как я спросил об этом, но я все еще вижу, что этот вопрос является фаворитом и приоритетом, поэтому я решил, что поделюсь тем, как я решил это решить. В моем случае файлы не такие большие, поэтому я просто решил MIME закодировать их, а затем сохранить строку в HTML5 localStorage. Он работает как прелесть.
Ответ 2
Недавно я написал статью о API файлов HTML5 http://speckyboy.com/2012/10/30/getting-to-grips-with-the-html5-file-api-2/
Также перейдите на страницу GitHub repo - https://github.com/mailru/FileAPI для предварительного контроля.
Ответ 3
Я не думаю, что localStorage
будет правильным ответом здесь, потому что localStorage
сохраняет только строки и имеет ограничение на хранение в 5 мегабайт.
Я предлагаю нечто вроде http://pouchdb.com
Но если вы настаиваете на localStorage
, то у Mozilla Hacks есть статья о хранении изображений в localStorage
:
http://hacks.mozilla.org/2012/02/saving-images-and-files-in-localstorage/
indexedDB
может быть лучшим местом для хранения файлов:
http://hacks.mozilla.org/2012/02/storing-images-and-files-in-indexeddb/