Сергей delphinpro, api обычно stateless. сайт у нас обычно statefull. Возникает вопрос, зачем мы будем скрещивать ужа с ежом и останутся ли зверушки довольны.
AnKus, да я не сужу. я честно говоря не сталкивался с таким. но может если это все не работает - костыль поставить? эта кнопка по факту ставит куку szncmpone=1. Может вы сами ее поставите, и тогда окна не будет?
accountnujen, Получается. Просто вы хотите получить серебрянную пулю - одна команда что бы править всем. Вот это точно не получится. Если вам в заголовках не прилетело название файла - ну значит не судьба, программист решил этого не делать - напишите владельцу сервера письмо, он лишит его булочки.
accountnujen, Ну да - можно пользователю отдать файл разными способами. Можно тупо пульнуть content-type нужный, а в ответе сервера тупо содержимое файла - а там браузер с пользователем сам разберется как это назвать.
accountnujen, слушайте. есть определенные вещи которые устроенны в HTTP так а не иначе. Есть инструменты которые работают исходя из того как хотели создатели. Есть сервера которые настроены так как им хотелось, а не так как хотелось вам.
Способ как получить заголовки вам привели. Вы можете вообще забить на все - и написать свой клиент для http через fsockopen и запилить там вообще чего душе угодно - в том числе рвать соединение после получения всех заголовков и автоматический редирект.
DevMan, ну это и есть магия. просто когда берешь данные из чужих рук - стоит наверное сразу же рассматривать варианты того что подсунут что нибудь неудобоваримое. например бесконечный редирект, или zip бомбу
toxa82, accountnujen, ну вообще есть CURLOPT_NOBODY что бы получить только заголовки.
Но если вы думаете что это защитит вас от вечного редиректа - я вас разочарую. Разница в том что curl автоматом отвалится при достижение CURLOPT_MAXREDIRS
accountnujen, а нет никаких гарантий что сервер не будет вас вечно слать нахрен. Как бы сделайте index.php с кодом <?php die(header('Location: index.php')); ?> и вы ровно это получите. Как бы обработка того что вас сервер решил не продинамить - на вас. А как вы хотели?