使用Ajax Play Framework异步css视图更新

时间:2011-12-21 14:35:39

标签: ajax playframework jobs

我目前正在使用Play!创建一个应用程序,我想根据数据库中的值更新我的视图。

我创建了一个监控作业,其目的是每隔30分钟向多个站点发送http请求,并为每个站点记录一个值到数据库中:如果站点已响应,则记录1,否则记录0。

除此之外,我想在我的应用程序主模板上查看每个站点的小颜色点:如果站点响应,它将是绿色,如果不是,它将是红色。此颜色更新必须异步完成。这个点将显示在我的应用程序的每个页面上。

所以,我可以使用我的工作,这已经是一个异步的东西,在必要时改变点颜色,但我不知道是否可以从作业更新视图。 或者我可以使用css创建一个ajax脚本来更新颜色,但是当我的数据库标志值发生变化时,我不知道如何触发它。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您无法更新作业中的视图。但您可以使用WebSocket更新它:http://www.playframework.org/documentation/1.2.4/asynchronous#UsingWebSockets 但它尚未在所有浏览器上得到支持。

我认为执行此操作的标准方法是每隔X秒从ajax调用一个控制器(询问您的数据库)并根据响应更新点颜色。选择刷新率要小心,如果你有很多客户端,你的服务器会有很多请求。