На сервере существует директория с правами 700. В ней содержится PDF документ. Нужно скачать этот документ. Раньше использовал HTML-форму, в PHP readfile() и все отлично работало.
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment; filename="'.$_POST['request'].'.pdf"');
readfile($file);
Сейчас же я отправляю POST запрос используя AJAX и из-за столкнулся с проблемой.
$('#d_button').click(function () {
var form_data = new FormData();
form_data.append('u_class', $('#u_class').val());
form_data.append('request', $('#request').val());
$.ajax({
url: "http://example.ru/download.php",
dataType: 'json',
data: form_data,
cache: false,
contentType: false,
processData: false,
type: 'POST',
success: function (data) {
console.log(data);
},
error: function (data) {
console.log(data);
}
});
});
Файл, который нужно скачать, не должен быть всем доступен, то есть использование прямой ссылки на файл недопустимо.
Работать должно так: если у пользователя достаточно прав (уровень привилегий считывается из базы данных), сервер отдает ему файл.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости