Intereting Posts
WordPress – запрос 5 сообщений со специальным сообщением в верхней части update_option не сохраняет массив, но сохраняет строку 'Array' Get_template_part внутри папки Организовать функции.php Может ли несколько пользовательских типов сообщений использовать обычную таксономию? Разбиение страниц на несколько запросов для разных авторов на author.php Проверьте, имеет ли пост определенный tag_ID в пользовательском типе сообщения Страница администрирования плагина WordPress – использование функции WordPress в связанном файле php Как добавить функцию экспорта на пользовательскую страницу темы параметров Поля первого и последнего имени не заполняются при использовании wp_insert_user Metabox Не сохранять данные У меня есть что беспокоиться при переключении на тему по умолчанию, чтобы протестировать конфликты плагина? Зная общее количество сообщений, прежде чем попасть в цикл передавать идентификатор пользователя в slug и получать информацию о пользователе Зарегистрируйте нового пользователя и добавьте значение строки данных для него

Проблема AJAX – Невозможность SyntaxError при обработке Zip-файла

Я создаю приложение, которое позволит пользователю заполнить форму, а затем загрузить настроенный zip-файл для отправки. Я использую AJAX для выполнения этой задачи.

Build.prototype.ajaxHandler = function(method, values) { jQuery.ajax({ type: 'POST', url: WP_LOCALIZED['url'], data: { action: 'request_handler', method: method, data: values }, success: function(data) { var response = jQuery.parseJSON(data); console.log(response); }, error: function(XMLHttpRequest, textStatus, errorThrown) { console.log(XMLHttpRequest, textStatus, errorThrown); } }); }; 

Всякий раз, когда я пытаюсь вернуть базовые данные с помощью моего обработчика ajax, я могу успешно вернуться без проблем, но когда я пытаюсь обработать мой метод zip-файла, я последовательно получаю Uncaught SyntaxError: Unexpected token < даже если метод zip_file() фактически не возвращается любые данные возвращаются к javascript-методу.

 /** * AJAX handler * * @return {json} * @since 1.0 */ public function request_handler() { $post = $_POST; $data = $post['data']; // If this wasn't here it would return my $data variable $this->zip_file(); die(json_encode($data)); } 

Я также сам протестировал метод zip_file() , поместив его в функцию init() и он работает так же, как я ожидаю, что он будет без проблем.

 /** * Create Zip File * * @return void * @since 1.0 */ public function zip_file() { $zip = new ZipArchive; if($zip->open('test.zip', ZipArchive::CREATE) === TRUE) { if($zip->addEmptyDir($this->_plugin_path . 'assets/temp_files')) { // Do stuff } $zip->close(); } header('Content-Type: application/zip'); header('Content-disposition: attachment; filename=filename.zip'); header('Content-Length: ' . filesize($zip)); readfile($zip); } 

Интересно то же самое происходит, если я заменил вызов $this->zip_file() только базовым выражением echo . Кроме того, вместо того, чтобы говорить мне, что Unexpected token – это < он говорит e вместо.

Я думаю, что я неправильно понимаю что-то фундаментальное в отношении того, как эти два взаимодействуют друг с другом, но пока не смогли найти какую-либо информацию о том, что это может быть.

Любая помощь будет оценена по достоинству.

Solutions Collecting From Web of "Проблема AJAX – Невозможность SyntaxError при обработке Zip-файла"