Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
ParanoidAndroid
0 / 0 / 0
Регистрация: 04.11.2011
Сообщений: 29
1

Скачивание файла AJAX

31.07.2013, 05:54. Просмотров 3234. Ответов 3
Метки нет (Все метки)

Доброго, суть вопроса такова. С помощью аякс легко и просто прочитать заголовки сервера, а можно ли подменить заголовок, как это делается функций header() на стороне сервера?
Например, у нас есть текстовый файл, с помощью АЯКС мы открываем его get запросом и читаем содержимое

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function vote(){   
 
    var req = getXmlHttp();  //функция получение XMLHttpRequest      
 
    req.onreadystatechange = function() {       
 
        if (req.readyState == 4) { 
 
            if(req.status == 200) {                 
 
                alert("Ответ сервера: "+req.responseText);
 
            }         
 
        }
 
    }
 
 
 
       
 
    req.open('GET', 'test.txt', true);   
    req.send(null); 
}
В данном примере мы получим содержимое файла test.txt, а каким способом можно инициировать загрузку файла из JS скрипта?

Добавлено через 14 минут
Вообще, как я понял копать нужно в сторону заголовков, что бы браузер инициировал скачивание, перед отправкой файла, нужно прописать content-type, можно ли подменить заголовок от сервера с помощью js, что бы браузер воспринял контент как необходимый для скачивания?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.07.2013, 05:54
Ответы с готовыми решениями:

Скачивание файла и редирект
Добрый день, подскажите как сделать при нажатии на ссылку чтоб выполнялось два...

Скачивание файла в JavaScript
Здравствуйте. Меня интересует, как в JavaScript скачать на компьютер и...

Скачивание файла в фоновом режиме
Ищу грамотного человека, для выполнения следующей задачи: по протоколу http...

Скачивание файла без дополнительных действий
Каким образом можно сделать, чтобы файл скачивался с сервера сразу при переходе...

Запретить повторное скачивание файла одному пользователю.
Сайт на чистом html, поэтому юзнуть php не могу вставкой. нужен скрипт...

3
kalabuni
Нарушитель
3275 / 2593 / 621
Регистрация: 18.04.2012
Сообщений: 7,807
31.07.2013, 08:39 2
с помощью технологии AJAX никакие файлы не скачиваются

HTML-страница получает ответ от файла на сервере в виде строки символов

это для вас "Да здравствует пофигизм!" - является лозунгом
а для компьютера - это просто набор символов и никакого смысла в этом наборе символов компьютер уловить не может

что текстовое содержимое, что код на javascripte - оно всё набор символов
и в вашей власти превратить этот набор символов либо в текст на странице, либо в исполняемый javascript-код
посмотрите тему XmlHTTPRequest с подгрузкой JavaScript
1
ParanoidAndroid
0 / 0 / 0
Регистрация: 04.11.2011
Сообщений: 29
31.07.2013, 22:05  [ТС] 3
Спасибо за пояснения. То есть аяксом подключаться к файлу идея глупая, а что если помещать ссылку на фаил в скрытый iframe, тогда по идее браузер должен инициировать закачку или я ошибаюсь?

Добавлено через 5 часов 40 минут
Ответ оказался настолько простой, что мне кажется должно быть стыдно не только мне, но и всем кто помогал, но так и не дал простой ответ. Что бы инициировать загрузку страницы, не нужно подменять заголовки или делать скрытые фреймы, достаточно элементу <a> добавить атрибут download="Желаемое имя файла", пример

<a href="/test.mp3" download="test.mp3">EXAMPLE</a>
0
kalabuni
Нарушитель
3275 / 2593 / 621
Регистрация: 18.04.2012
Сообщений: 7,807
01.08.2013, 03:47 4
Цитата Сообщение от ParanoidAndroid Посмотреть сообщение
должно быть стыдно не только мне, но и всем кто помогал, но так и не дал простой ответ
увольте меня от этого
стыдитесь сами
ибо ваш вопрос совершенно никак не был связан с тем решением, кое вы нашли
спрашивали вы "про дядьку в Киеве", а ответ нашли "в огороде с бузиной"

кстати, имейте в виду, что работает этот атрибут далеко не везде
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2013, 03:47

Как сделать скачивание файла после просмотра google рекламы?
У меня проблема для javascript kode как сделать скачивание файла после...

Отправка файла на сервер. AJAX. Чистый js
Здравствуйте. В рамка написания своего сайта задался целью создать небольшую...

Как скрыть имя файла в ajax-запросе?
Как бы скрыть имя файла в ajax-запросе? $.ajax({ url:&quot;/file.php&quot;, ... ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru