Я отправляю данные JSON на сервер. Сервер генерирует файл PDF и отвечает URL-адресом этого файла PDF. Затем я делаю еще один запрос на сервер для загрузки файла PDF. Чтобы сделать загрузку, я создаю скрытый iframe и устанавливаю исходный URL-адрес PDF. Обратите внимание, что я хочу, чтобы браузер пользователя оставался на той же странице и загружался в фоновом режиме. Более подробную информацию о том, что я делаю, и о решении, с которым я столкнулся, можно найти в этом ТАКОМ вопросе .
Всякий раз, когда я использую эту технику в Chrome, все работает отлично. Но, глядя на консоль разработчика Chrome, я вижу сообщение об ошибке Failed to load resource
. Есть ли способ сделать это по-другому, чтобы я не получил эти ошибки?
Очень простой и работающий пример проблемы в действии можно увидеть на jsfiddle. Просто нажмите кнопку «Загрузить PDF» и посмотрите на консоль Chrome.
Код на этой странице выглядит так:
$(document).ready( function() {
var downloadFile = function(url){
var iframe = $("iframe#download");
if (!iframe.length) {
iframe = $("<iframe id='download' style='display:none;'/>");
$("body").append(iframe);
}
iframe.attr("src", url);
};
$("button").click(function() {
downloadFile("http://www.education.gov.yk.ca/pdf/pdf-test.pdf");
});
});