Загрузка файлов в офлайн-приложениях HTML5

Я работаю над веб-приложением, которое потенциально будет использоваться в средах с нестабильным подключением к Интернету. Я реализую его как автономное приложение 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, и я хотел получить от вас отзывы от людей.

Спасибо!

Ответ 1

Я знаю, что прошло некоторое время с тех пор, как я спросил об этом, но я все еще вижу, что этот вопрос является фаворитом и приоритетом, поэтому я решил, что поделюсь тем, как я решил это решить. В моем случае файлы не такие большие, поэтому я просто решил MIME закодировать их, а затем сохранить строку в HTML5 localStorage. Он работает как прелесть.

Ответ 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/