Я пишу расширение Google Chrome, которое позволяет загружать резервный файл ваших данных. Я хочу, чтобы пользователь мог нажать кнопку, и откроется диалоговое окно «Сохранить как», и они смогут сохранить файл на своем компьютере. Ничто не работает, и я не нашел ответа в Интернете. Я попробовал несколько подходов:Force download in Google Chrome Extension
- Использование
document.execCommand('SaveAs', null, 'filename.json');
Это не работает, потому что эта команда IE только и там не появляется, чтобы быть Webkit-альтернатива - Использование URIs данных. Это было самым многообещающим и работало в Opera и Firefox, но проблема в том, что ни Chrome, ни Safari, похоже, не поддерживают Content-disposition = attachment; -header в URI. Это должно работы. (Chrome даже не позволяет мне
ctrl/cmd+s
страница с URI данных) - Использование
XMLHTTPRequest
. Я не пробовал это, но должен быть какой-то способ, которым вы могли бы передать запрос? Обратите внимание, что я не хочу использовать внешний сервер (в этом случае я мог бы просто отправить POST-запрос и применить Content-disposition: -header) - Использование доступного API расширения Chrome. Но для этой цели, похоже, ничего нет.
Причина, по которой я не хочу использовать внешний сервер, заключается в том, что я не хочу платить за хостинг, а отправляемые данные могут быть чувствительны к пользователю, и я не хочу нарушать конфиденциальность кого-либо.
Неужели кто-нибудь получил это на работу?
см http://stackoverflow.com/questions/4003352/chrome-extension-download-export-content-created-on-the-fly – serg