LINUX.ORG.RU

Почему файл открывается в браузере как текст, а не скачивается?

 , , ,


0

1

Пишу тут одну фигню, необходимо из этой фигни выгружать не фиговые такие отчеты в *.xlsx. Сгенерировал файлик, передал JS'у на него ссылку, пишу:

window.location.href = result['url'];
Т.е. пытаюсь «скачать» его. А он открывается тупо как текст. Я думал проблема в content-type'e, добавил следующее:
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
Все равно как текст открывается.

П.С. Я знаю, что без JS'а с ajax'ом все сделать проще, но необходимо передавать кучу информации, по этому, приходится юзать JS.

Перемещено true_admin из development

Deleted
Ответ на: комментарий от reprimand

посмотри что за хедеры отправляет сервер, делов-то

Странно, там нет ни одного моего параметра, как будто я их и не указывал вовсе.

Не девелопер что-ли?)

Да какой из меня девелопер. Стажер-юниор максимум.

Deleted
()
Ответ на: комментарий от reprimand

Вообще нет, один параметр есть, а «Content-Disposition: attachment;» - нет. Ни фига не пойму:

POST /saveToExcelTabelByCategorie.xlsx HTTP/1.1
Host: tabgraf
Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Cookie: PHPSESSID=vi082ee84f8hpfccmasr4768j2
Origin: http://tabgraf
Referer: http://tabgraf/
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36
X-DevTools-Emulate-Network-Conditions-Client-Id: 32D3F12F-A4AB-4EF5-9810-FFDE5BC2B29E
X-Requested-With: XMLHttpRequest

HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 10100
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,text/html; charset=utf-8
Date: Wed, 30 Sep 2015 10:47:21 GMT
ETag: W/"c48a29626dfbd01:0"
Last-Modified: Wed, 30 Sep 2015 10:47:21 GMT
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET

Меня пугает вот это: «Accept: application/json, text/javascript, */*; q=0.01»

Deleted
()
Последнее исправление: Bizun (всего исправлений: 1)
Ответ на: комментарий от Deleted

Меня пугает вот это: «Accept: application/json, text/javascript, */*; q=0.01»

А Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,text/html не пугает? А POST и X-Requested-With: XMLHttpRequest, когда ты делаешь просто

window.location.href = result['url'];

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от Deleted

Майкрософта параметры от «олдовых» версий должны быть, а с этими не взлетит.

anonymous
()

Может не переходить на эту ссылку, а создавать на странице

<a href="/url/here" download>скачать</a>

?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.