Я использую $ajax({ type:"post", url:"/whatever/" })
для доступа к моему серверу, который работает красиво. Проблема в том, что ответ не оценивается по мере необходимости. На некоторых occations сервер отправляет обратно фиктивную строку («X»), который может быть проигнорирован в браузере, но и в других случаях мой сервер отправляет обратно специальный файл как вложение:Функция jquery ajax и загрузка файлов
mimetype application/x-my-special-type
Content-Disposition attachment; filename=myname.ext
....
Но браузер (I меня интересует только Google Chrome/Chromium - это интрасети) не показывает всплывающее окно загрузки. (Вызов URL «/ whatever /» непосредственно в адресной строке фактически показывает всплывающее окно загрузки для сохранения файла.)
Как я могу убедить jQuery показать обычное всплывающее окно загрузки?
Я боялся это прочитать. Кажется, я должен отправить запрос ajax, проверить ответ с сервера, и если он содержит что-то вроде «download_waiting», тогда сделайте window.location.href, чтобы на самом деле выполнить загрузку :( – mawimawi
Действительно. Обновлен мой ответ, чтобы сказать точно, что как вы ввели свой комментарий. – spender
Отсутствие ответа, вероятно, может быть обработано страницей 404 или аналогичной странице типа «Запрошенный файл не найден». –