日期:2014-05-17  浏览次数:20449 次

服务器异常,页面自动刷新
我做了一个电子看板,就是将一些信息显示在智能电视上。
但是服务器总会出现一些意料之外的问题,比如重启。。。这时候页面
会一直显示错误,不会自动刷新。客户很不满意T_T.....
我在页面设置的自动刷新代码是:<meta http-equiv="refresh" content="10" />
但是页面出错时,就刷不了了。求大神解决。非常感谢。
好人一生平安,1024

------解决方案--------------------
1024
------解决方案--------------------
<meta http-equiv="refresh" content="10" />
刷新是没问题,如果发生错误了,不刷新,那就是出现黄页,而没有这行输出了。
所以,你想完全从客户端解决,就只能用iframe把实际的页面套一层,把刷新放在父页面就行了。本质上,要从服务端想办法,如果是asp.net,可以修改web.config让其错误跳转。或者在page_error里,隐藏错误了。
------解决方案--------------------
如果是IIS停止了或者另外的服务器原因

这时候你刷新又有什么用?
------解决方案--------------------
对了,很久以前有一款叫做傲游浏览器的,本身就自带有每隔多少秒就自动刷新当前网址的功能,不懂你的智能电视支持不支持安装它了。




其实,我看你的这个需求,按我这边的理解,使用Ajax技术绝对是可以解决这个问题的,就是当前页面,我放一个定时器,然后通过Ajax去获取最新的数据,有数据返回,则证明服务端正常,显示

如果取不到数据或者其它(这个得自己弹窗口显示一下异常时返回的数据是啥),那我们就不显示,换成显示友好的提示什么的。

反正当前页面从第一次打开后,就不再需要再次请求服务器,所以,会永久地保留在客户端,这样就可以放一个永久运行的JS定时器根据Ajax去无限获取服务端的数据来显示。

如果不会Ajax,那没问题,只要在页面里放一个iframe,然后使用一个JS定时器,去不停地给这个iframe的src赋值,也能达到刷新效果,就算是服务器没电而关机了,也不会影响到定时器的刷新,最多就是显示找不到网页的错误