Play Framework Обновление асинхронного представления CSS с использованием Ajax - PullRequest
1 голос
/ 21 декабря 2011

В настоящее время я создаю приложение с помощью Play !, и я хотел обновить свое представление в соответствии со значениями из моей базы данных.

Я создал работу по мониторингу, целью которой является отправка http-запроса на несколько сайтов.каждые 30 минут и для записи значения в базу данных для каждого сайта: если сайт ответил, он записывает 1, в противном случае он записывает 0.

Кроме того, я хотел бы видеть в основном шаблоне своего приложения маленький цветточки для каждого сайта: если сайт отвечает, он будет зеленым, а если нет - красным.Это обновление цвета должно выполняться асинхронно.Эти точки будут отображаться для каждой страницы моего приложения.

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

Спасибо за вашу помощь!

1 Ответ

1 голос
/ 21 декабря 2011

Вы не можете обновлять представления с работы. Но вы можете обновить его с помощью WebSocket: http://www.playframework.org/documentation/1.2.4/asynchronous#UsingWebSockets Но это поддерживается не во всех браузерах.

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

...