[jQuery] Как в одном соединении получить несколько json объектов?

dandandan

Мой дом здесь!
Регистрация
7 Авг 2008
Сообщения
1.036
Реакции
292
Можно ли в jQuery получить несколько json ответов? Т.е. делаю с помощью jquery json запрос. С помощью php скрипта отдаю один джсон ответ, потом второй через несколько секунд, третий и т.д... Это все должно делаться в рамках одного http:// соединения.
 
comet-приложение один из вариантов делать. есть плагины для jquery для работы по comet-схеме.
 
Если нужно для backend, можно использовать WebSocket`ы
Код:
var socket = new WebSocket("ws://myserver.com:8081/");
socket.onopen = function () {
  console.log("Соединение открылось");
};
socket.onclose = function () {
  console.log ("Соединение закрылось");
};
socket.onmessage = function (event) {
  console.log ("Пришло сообщение с содержанием:", event.data);
};
 
// Отправка сообщения серверу
socket.send("message");
 
есть плагины для jquery для работы по comet-схеме.
Погуглил. Все плагины в альфа версии. Страшно такие на рабочий проект ставить.

WebSocket`ы - интересно. Если не найду что-нибудь для jQuery.getJSON, буду копать сторону сокетов.

p.s. у меня отправляются данные на один скрипт. Иногда скрипт обрабатывает данные очень долго. Чтобы пользователи не начинали нервничать, хочу от скрипта слать сообщения, что все идет нормально. К сожалению обращаться к серверу по таймеру - не вариант, т.к. сообщения для пользователя нужно сохранять и получать из базы. Зачем лишняя нагрузка на базу.
 
К сожалению обращаться к серверу по таймеру - не вариант, т.к. сообщения для пользователя нужно сохранять и получать из базы. Зачем лишняя нагрузка на базу.
Базу можно и в оперативке создать - нагрузка на диск снизится, а для процессора и вовсе незаметно будет выдернуть запрос из базы и передать клиенту.
 
p.s. у меня отправляются данные на один скрипт. Иногда скрипт обрабатывает данные очень долго. Чтобы пользователи не начинали нервничать, хочу от скрипта слать сообщения, что все идет нормально.
Если у тебя скрипт написан на PHP, обязательно выполняй его в отдельных процессах. В обсуждениях на офсайте PHP есть хороший пример работы с процессами:
Для просмотра ссылки Войди или Зарегистрируйся
Результаты процессов синхронизируй в БД или файлах. Сделай отдельный скриптик для мониторинга (ну, например, который будет выдавать выполненную работу в процентах) и вызывай его из браузера аяксом. Получится олдскульно кроссбраузерно и надежно!
 
Тут похожая тема Для просмотра ссылки Войди или Зарегистрируйся скрипт результат процесса сохраняет в файл, а аякс читает его.
 
Назад
Сверху