Intereting Posts
Laravel: Запуск очереди: постоянное прослушивание в Windows Azure Web App Как передать переменную php в ajax Проблема с отображением польских символов с использованием FPDF? Предупреждение: невозможно изменить информацию заголовка – заголовки, уже отправленные с помощью ERROR Проблема с PHP-почтой Существуют ли разные типы двойных кавычек в utf-8 (PHP, str_replace)? Список всех файлов в одном каталоге PHP Как отлаживать скрипты php на стороне сервера? В ситуации клиентская страница не отображает ответ Как я могу загрузить доступ к файлам вне каталога public_html? Каково название временного формата PT00H00M00S и какие языки его используют? Проверка XML: «Совпадение глобальной декларации недоступно для ошибки проверки» Устранение неполадок "preg_replace (): Неизвестный модификатор" Что лучше использовать в PHP $ array = $ value или array_push ($ array, $ value)? Абсолютные или относительные пути Теги joomla 3.x в пользовательском компоненте не выполняются

Начальная перезагрузка сервера на Ajax-вызов

Мне нужно инициировать перезагрузку со стороны сервера (PHP) durring и вызов AJAX. Как мне это сделать. Я честно не думаю, что это поддерживается.

Мой текущий метод – использовать функцию PHP header () и записывать ее как responseText из вызова AJAX, а затем делать добавление innerHTML.

Однако это не является надлежащей перезагрузкой в ​​моей книге, поскольку это не означает функцию onload. Это также кажется изобретенным, а не «чистым» решением.

Отправьте команду / флаг обратно в обработчик Ajax, чтобы он вызывал на странице следующий метод JavaScript:

 window.location.reload(); 

Существует шаблон, который использует AJAX для создания приложения PUSH. Я не знаю настоящего имени парадигмы, ни хорошей реализации, но это в основном, как это работает:

  1. Клиент делает запрос AJAX серверу.
  2. Сервер не закрывает соединение.
  3. Когда сервер хочет нажать. сервер говорит:
    а. Сообщение push процесса X
    б. Инициируйте новое соединение. (т.е. goto 1.)
    <Сервер закрывает соединение>

Таким образом, всегда существует «зависающее» соединение, и как только сервер хочет ответить, клиент немедленно создает новый, который зависает снова.

Единственный способ перезагрузить всю страницу – изменить window.location . Вы не можете сделать это с сервера. Каждое действие должно быть инициировано клиентом, что является основополагающим для спокойных протоколов, таких как HTTP.

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

Например, это может перезагрузить BODY: $('body').load('ajax/page.html body');