Mootools: почему каждый flush () в PHP не отражается на стороне пользователя в событиях mootools - PullRequest
0 голосов
/ 08 февраля 2011

Я занимаюсь разработкой приложения в mootools. Есть некоторый код, который отправляет запрос на сервер, используя класс Request.

req = new Request({
async: false, method: 'post',

someEvent: function(currentChunk) 
{ /* this event is fired everytime when server flushes the output using flush()*/ },

  onSuccess: function(html) { responseProcessor(); },
  onFailure: function() { alert('Page Loading Failed ....!!'); },
});

На стороне сервера он выполняет файл PHP, где я очищаю буфер вывода с помощью flush ().но на приемном конце есть событие onSuccess, которое дает мне всю responseData в одной переменной.

Есть ли какое-либо событие, которое вызывается после того, как каждый сервер времени сбрасывает выходной буфер .?

Ответы [ 3 ]

1 голос
/ 08 февраля 2011

в API задокументировано событие прогресса: http://mootools.net/docs/core/Request/Request

0 голосов
/ 09 февраля 2011

Я проверил плагин JQuery AJAX Http Stream, на который указывает ссылка на steweb, включенная в его anwser.

Все, что он делает - это просто опрос.Вы можете расширить класс MooTools.Core.Request и создать класс MooTools.Core.Request.Polling, который бы добавил некоторые параметры, такие как опрос.

Вам нужно будет реализовать событие 'request' (запускаемое непосредственно передзапрос отправлен), чтобы настроить опрос и завершить событие, чтобы остановить его.

0 голосов
/ 08 февраля 2011

Обратный вызов onSuccess передает весь ответ в качестве параметра. Если вы делаете AJAX-вызов, он возвращает в качестве ответа все материалы, которые были бы отображены в браузере, если бы вы обращались к этому сценарию напрямую. С запросом mootools вы не можете показать ход вывода (не может быть событий, вызванных после сброса). Я не знаю, есть ли плагин Moo, который делает что-то вроде этого.

p.s. Я знаю, что есть плагин jQuery, который может что-то для вас сделать ( Работает ли PHP-флеш с jQuerys ajax? )

...