ОК, название не дает большого смысла, поэтому позвольте мне объяснить мою очень странную настройку.Вывод содержимого файла как двоичный, как ответ AJAX
Два сервера участвуют:
- сайт: удаленный
- локальный: локальная машина
Рабочий процесс выглядит следующим образом:
- Сайт вызывает локальный через перекрестное домен AJAX
- В ответ localhos т динамически создает ZIP-файл с помощью ZipArchive Lib РНР
- локальных передают необработанные данные, которые содержат архив как ответ AJAX
запроса сделан и архив сделан - все хорошо. Архив открыт, все хорошо. Теперь я застрял в том, как передать этот архив как ответ AJAX, чтобы его можно было «снова собрать» (à la Humpty Dumpty). Когда я делаю это сейчас (через file_put_contents()
), это ошибки при открытии, говоря, что это неверно. В настоящее время я просто вывожу исходные данные архива:
echo file_get_contents('path/to/archive.zip');
Это прекрасно, но посылает искаженные символы в ответ. Я не очень разбираюсь в кодировании и заголовках, поэтому извиняюсь, если это кажется очевидным.
Для ответа я должен искать преобразование в двоичный файл или отправку определенных заголовков и т. Д.? Я попытался отправить заголовок multipart/form-data, но не кубики. Заголовки - не моя сильная сторона.
Обратите внимание: cURL не является вариантом в этом случае, иначе я буду смеяться.
Почтовый архив предназначен для его загрузки? или отображение его или что? не понял цели получения архива с помощью Ajax – Sn0opr
Цель не имеет значения - это ситуация, с которой мне приходится работать. Идея заключается в том, что ответ AJAX от localhost принимается сайтом, а затем отправляется через другой запрос POST AJAX в веб-службу на сайте, которая должна быть перестроена как архив. По сути, это все средства создания, а затем передачи ZIP-файла через AJAX. – Utkanos