B/s模式中如何实现客户端自动刷新(顶有分)

时间:2022-05-27 09:00:38
一般做监控系统,都是基于C/S模式来实现,因为C/s模式的好处是服务端可以主动的将数据实时的“推送”到客户端。
但是使用B/S模式来做监控系统,冒貌似不是很理想,最主要的就是B/S模式的客户端不是长连接,服务端无法主动将数据推送到客户端。

因此求各位老大有没有好的经验设计这种应用!最差我想在客户端放一个Timer定时主动提取。但是感觉不好,而且屏幕刷新成问题。
(使用ASP.NET实现)。顶有分.....

61 个解决方案

#1


帮顶

#2


用js局部刷新不行吗?

#3


应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

#4


Ajax实现局部刷新 
 

#5


#6


顶。用js可以。

#7


引用 3 楼 findcaiyzh 的回复:
应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

感觉有道理

#8


ajax

#9


推荐用ajax吧,这个可以实现局部刷新。效率还可以的……

#10


<asp:updatepanel .....>
<ContentTemplate>
 ......
 <asp:Timer ID="Timer1" runat="server" Interval="10000">
</ContentTemplate>
</asp:updatepanel>

#11


那就是说,使用定时器定时来取数据?然后使用ajax局部刷新?

#12


客户端调用webservice这个效率如何?

#13


隐藏iframe定时刷新
ajsx
有银子的话用服务器推comet

#14


用ajax实现局部更新  可以按秒来刷新或者毫秒  可以  就像有的页面时间变动 那个秒也是在不停的调
自己想想

#15


还有一个问题?如何判断是否有更新??

#16


定时器,通过ajax后台处理
是否有更新就得看你的需求了

#17


顶下,用ajax吧

#18


引用 13 楼 pig23 Ƈȉʋ̍ΏБu590D:
隐藏iframe定时刷新
ajsx
有银子的话用服务器推comet

这个有点意思,能否更详细一些,或者推荐一些资料!

#19


ajax+缓存 

#20


ajax选用哪种框架?Jquery?

#21


引用 18 楼 liuzuofei 的回复:
引用 13 楼 pig23 Ƈȉʋ̍ΏБu590D:
 隐藏iframe定时刷新
 ajsx
 有银子的话用服务器推comet

 这个有点意思,能否更详细一些,或者推荐一些资料!



字打错了,是ajax - -||
隐藏iframe是比较老的方法,因为当时没有ajax
ajax一般是利用js的settimeout进行异步刷新,优点是无页面闪动,缺点是局限性且性能还是有问题
comet才是正统,但需要银子来配置服务器,网上搜下吧

#22


up

#23


comet目前看来不适合我,有没有大侠提供ajax的这种应用demo??谢谢!

#24


ding

#25


局部刷新,不过又得学不少东西了、、、

#26


up

#27


顶下学习下

#28


咋个没有人继续了啊?Jquery如何?在ASP.NET中好用不?

#29


原理还是 循环 向服务器端 发送请求
唯一的区别 就你是你的封装的怎么样了

#30


楼上说的ajax实现,如果页面长时间停留会导致客户端内存溢出。比较好的解决办法是利用flex+webservic解决

#31


Ajax

#32


引用 7 楼 liaoyukun111 的回复:
引用 3 楼 findcaiyzh 的回复:
应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

感觉有道理



支持

#33


我是这样做的:
自己写了个浏览顺器,调用aspx页面,打开浏览器即与服务器建立通道,在服务器上写个机器人,检测到有新数据就向浏览器发出信号,浏览器收到信号后刷新页面

#34


想那么复杂,用个列表直接取数据库的数据,写个定时器每隔一段时间刷新一下页面就可以了,管它有新数据没有,我们的EDM系统就是这么干的

#35


头部加一句
<meta http-equiv="refresh" content="5" />
每隔5秒刷新一下当前网页。

#36


Ajax里面哟急个很好的控件,可以解决你的问题,可以局部刷新,在加上还要使用缓存技术,就OK了

#37


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="1000">
<title>隔1000秒刷新当前页面</title>
</head>
<body>
</body>
</html>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="3;url=http://www.yongfa365.com/blog">
<title>隔3秒刷新到http://www.yongfa365.com/blog</title>
</head>
<body>
</body>
</html>

#38


推荐用js异步发送方式实现无刷新

#39


ajax主要用户异步调用和局部刷新,如果仅仅是局部刷新,其实ajax就不一定需要了,不是嘛?而且学习周期长!

#40


       学习下,如果谁有例子就更好了

#41


引用 37 楼 polarissky ????????????u590D:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="1000">
<title>隔1000秒刷新当前页面 </title>
</head>
<body>
</body>
</html>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="3;url=http://www.yongfa365.com/blog">
<title>隔3秒刷新到http://www.yongfa365.com/blog </title>
</head>
<body>
</body>
</html>


没有只刷新一次,后面就不刷新了啊?

#42


js可以

#43


ajax +timer

#44


ajax好东西啊

#45


up

#46


up..

#47


帮顶

#48


用ajax做吧

#49



从性能上还是c/s模式强

#50


如果利用Cache的话,如何实现“只有数据变化了才会更新”?例如:我要取的数据对应一个表,如何判断这个表哪些发生了变化而仅仅将更新的数据提取?

#1


帮顶

#2


用js局部刷新不行吗?

#3


应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

#4


Ajax实现局部刷新 
 

#5


#6


顶。用js可以。

#7


引用 3 楼 findcaiyzh 的回复:
应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

感觉有道理

#8


ajax

#9


推荐用ajax吧,这个可以实现局部刷新。效率还可以的……

#10


<asp:updatepanel .....>
<ContentTemplate>
 ......
 <asp:Timer ID="Timer1" runat="server" Interval="10000">
</ContentTemplate>
</asp:updatepanel>

#11


那就是说,使用定时器定时来取数据?然后使用ajax局部刷新?

#12


客户端调用webservice这个效率如何?

#13


隐藏iframe定时刷新
ajsx
有银子的话用服务器推comet

#14


用ajax实现局部更新  可以按秒来刷新或者毫秒  可以  就像有的页面时间变动 那个秒也是在不停的调
自己想想

#15


还有一个问题?如何判断是否有更新??

#16


定时器,通过ajax后台处理
是否有更新就得看你的需求了

#17


顶下,用ajax吧

#18


引用 13 楼 pig23 Ƈȉʋ̍ΏБu590D:
隐藏iframe定时刷新
ajsx
有银子的话用服务器推comet

这个有点意思,能否更详细一些,或者推荐一些资料!

#19


ajax+缓存 

#20


ajax选用哪种框架?Jquery?

#21


引用 18 楼 liuzuofei 的回复:
引用 13 楼 pig23 Ƈȉʋ̍ΏБu590D:
 隐藏iframe定时刷新
 ajsx
 有银子的话用服务器推comet

 这个有点意思,能否更详细一些,或者推荐一些资料!



字打错了,是ajax - -||
隐藏iframe是比较老的方法,因为当时没有ajax
ajax一般是利用js的settimeout进行异步刷新,优点是无页面闪动,缺点是局限性且性能还是有问题
comet才是正统,但需要银子来配置服务器,网上搜下吧

#22


up

#23


comet目前看来不适合我,有没有大侠提供ajax的这种应用demo??谢谢!

#24


ding

#25


局部刷新,不过又得学不少东西了、、、

#26


up

#27


顶下学习下

#28


咋个没有人继续了啊?Jquery如何?在ASP.NET中好用不?

#29


原理还是 循环 向服务器端 发送请求
唯一的区别 就你是你的封装的怎么样了

#30


楼上说的ajax实现,如果页面长时间停留会导致客户端内存溢出。比较好的解决办法是利用flex+webservic解决

#31


Ajax

#32


引用 7 楼 liaoyukun111 的回复:
引用 3 楼 findcaiyzh 的回复:
应该可以使用Ajax吧。
在Javascript中定时调用web service.如果有更新,就刷新(可以只刷新局部),如果没有更新,就不用刷新了。

感觉有道理



支持

#33


我是这样做的:
自己写了个浏览顺器,调用aspx页面,打开浏览器即与服务器建立通道,在服务器上写个机器人,检测到有新数据就向浏览器发出信号,浏览器收到信号后刷新页面

#34


想那么复杂,用个列表直接取数据库的数据,写个定时器每隔一段时间刷新一下页面就可以了,管它有新数据没有,我们的EDM系统就是这么干的

#35


头部加一句
<meta http-equiv="refresh" content="5" />
每隔5秒刷新一下当前网页。

#36


Ajax里面哟急个很好的控件,可以解决你的问题,可以局部刷新,在加上还要使用缓存技术,就OK了

#37


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="1000">
<title>隔1000秒刷新当前页面</title>
</head>
<body>
</body>
</html>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="3;url=http://www.yongfa365.com/blog">
<title>隔3秒刷新到http://www.yongfa365.com/blog</title>
</head>
<body>
</body>
</html>

#38


推荐用js异步发送方式实现无刷新

#39


ajax主要用户异步调用和局部刷新,如果仅仅是局部刷新,其实ajax就不一定需要了,不是嘛?而且学习周期长!

#40


       学习下,如果谁有例子就更好了

#41


引用 37 楼 polarissky ????????????u590D:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="1000">
<title>隔1000秒刷新当前页面 </title>
</head>
<body>
</body>
</html>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta http-equiv="refresh" content="3;url=http://www.yongfa365.com/blog">
<title>隔3秒刷新到http://www.yongfa365.com/blog </title>
</head>
<body>
</body>
</html>


没有只刷新一次,后面就不刷新了啊?

#42


js可以

#43


ajax +timer

#44


ajax好东西啊

#45


up

#46


up..

#47


帮顶

#48


用ajax做吧

#49



从性能上还是c/s模式强

#50


如果利用Cache的话,如何实现“只有数据变化了才会更新”?例如:我要取的数据对应一个表,如何判断这个表哪些发生了变化而仅仅将更新的数据提取?