Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.10.2017, 17:32
Интересующийся
Отправить личное сообщение для someQuestions Посмотреть профиль Найти все сообщения от someQuestions
 
Регистрация: 01.10.2017
Сообщений: 14

fileEntry.toURL() принудительное сохранение файла
Всем привет!
Вот такой вот вопрос - как используя fileEntry.toURL() сделать ппринудительное сохранение файла(вызвать окно сохранения)?
Пример:
есть в "кэше" текстовый файл, и если сделать
location.href = fileEntry.toURL();

то браузер его просто откроет и покажет содержимое, а нужен запрос на сохранение.
Как я вижу решение проблемы - какой то особый MimiType. Пробовал 'application/octet-stream' - не работает, так же вспомнил про 'application/force-download' - тоже не проканало. Прошу совета.
Ответить с цитированием
  #2 (permalink)  
Старый 02.10.2017, 17:51
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

https://github.com/eligrey/FileSaver.js
Ответить с цитированием
  #3 (permalink)  
Старый 02.10.2017, 18:01
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

someQuestions, как вариант
var saveData = (function () {
        var a = document.createElement("a");
        document.body.appendChild(a);
        a.style = "display: none";
        return function (data, fileName) {
           var blob = new Blob([data], {type: "octet/stream"}),
               url = window.URL.createObjectURL(blob);
            a.href = url;
            a.download = fileName;
            a.click();
            window.URL.revokeObjectURL(url);
        };
    }());
    saveData('test', 'example2.txt');
Ответить с цитированием
  #4 (permalink)  
Старый 02.10.2017, 18:17
Интересующийся
Отправить личное сообщение для someQuestions Посмотреть профиль Найти все сообщения от someQuestions
 
Регистрация: 01.10.2017
Сообщений: 14

Сообщение от Alexandroppolus Посмотреть сообщение
https://github.com/eligrey/FileSaver.js
Совершенно не то что нужно, но всё равно спасибо!
Сообщение от Rasy Посмотреть сообщение
someQuestions, как вариант
var saveData = (function () {
        var a = document.createElement("a");
        document.body.appendChild(a);
        a.style = "display: none";
        return function (data, fileName) {
           var blob = new Blob([data], {type: "octet/stream"}),
               url = window.URL.createObjectURL(blob);
            a.href = url;
            a.download = fileName;
            a.click();
            window.URL.revokeObjectURL(url);
        };
    }());
    saveData('test', 'example2.txt');
Спасибо, думал а невидимом href'e, но думал что то элегантнее есть... хотя куда элегантнее Спасибо!
Ответить с цитированием
  #5 (permalink)  
Старый 03.10.2017, 12:38
Интересующийся
Отправить личное сообщение для someQuestions Посмотреть профиль Найти все сообщения от someQuestions
 
Регистрация: 01.10.2017
Сообщений: 14

Единственно забыли
a.remove();

Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение файла в cp1251 - jQuery zhukovia Общие вопросы Javascript 1 26.04.2017 21:17
Сохранение файла на стороне клиента. doox911 Общие вопросы Javascript 2 17.01.2014 00:49
Сохранение и архивация файла на сервер PHP zlodeeev Серверные языки и технологии 1 12.07.2012 18:02
Сохранение файла XML zeraid Общие вопросы Javascript 2 12.05.2011 02:08
Сохранение файла с сервера qwerty Общие вопросы Javascript 5 28.10.2009 12:39