能否实现服务器端控制客户端的页面刷新?

gaoweipeng7851 2008-09-09 06:40:28
请教高手!
服务器接收外来数据,使得网页变化,服务器端页面发生变化,客户端就自动刷新页面显示数据,不想在页面利用定时器进行定时刷新,有没有其他的解决方案啊??
...全文
996 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangchao1982 2008-10-10
  • 打赏
  • 举报
回复
有老孟的地方就必然会有一堆"星星"出现.呵呵.
楼主要的功能是人家设计web时,就首先否定掉的东西(不管你来我家多少次,我都是有求必应,并且只要我把你要的东西给你,我就再也不会记得你了.要是乞丐碰上这样的人该多好啊).所以永远不要奢望服务器会"主动向客户端示好".只能是客户端先给服务器"磕头请示",服务器才会搭理客户端.
所以,只能是ajax或者用iframe+js定时刷新.
peggylau 2008-09-17
  • 打赏
  • 举报
回复
ajax
Reverse.King 2008-09-17
  • 打赏
  • 举报
回复
除非客户端和服务器端建立持久连接.
michney 2008-09-17
  • 打赏
  • 举报
回复
肯定能实现啊,gmail上的webIM就是这样实现的,
HTTP模拟一个类似的长链接
litian200t 2008-09-17
  • 打赏
  • 举报
回复
怎么感觉有点像即时聊天室的功能呢?好像能做到这样的互动,即时聊天室那样的网站
chinahnzl 2008-09-17
  • 打赏
  • 举报
回复
好想法
yangzesen 2008-09-17
  • 打赏
  • 举报
回复
如果压力要求不是很大的话,可以采用模拟长连接的方式来处理,就是用户第一次请求服务器的时候,服务器判断一下当前有没有可以发给浏览器的信息,如果没有,就堵塞他。一直到服务器发现有内容了,在把内容返回给那些堵塞的请求,断开连接。客户端第一时间收到服务器的返回的内容,处理以后,马上再进行第二次请求,在堵塞。这样就可以保证即时行。建议客户端采用ajax方式在后台进行,这样就不会在状态栏显示一直在连接。服务器端可以使用Java或者php+c,java好像已经有这样的框架,php好像可以通过apache module扩展来实现,自己用c写一个模块。
wangdeyu97 2008-09-17
  • 打赏
  • 举报
回复
你的想法就不错,但ajax轮询相对而言更好一些,至于长连接push还不如轮询吧。
evjen 2008-09-16
  • 打赏
  • 举报
回复
路过
hexiyang68927 2008-09-16
  • 打赏
  • 举报
回复
学习中......
tv9 2008-09-16
  • 打赏
  • 举报
回复
网页,noway,用flex,有服务器主动推送技术
bizbuy 2008-09-15
  • 打赏
  • 举报
回复
显然不可能

客户端主动刷新服务器端是可以的
mrshelly 2008-09-15
  • 打赏
  • 举报
回复
要么 AJAX 去请求一下。

要么 客户端socket 长连接(第三方软件)


还有一种方式。


做一个隐藏的 Iframe

这个 Iframe 请求一个 长时间运行的 服务端脚本。

这个服务端脚本死循环。 给客户端发送 一段 <script>top.Frame001.location.reload()</script>

把 script 闭合做好,这样,服务端如果要客户端刷新,
就发送
<script>top.Frame001.location.reload()</script>
并 flush 到客户 端。
这种方式做过测试,可行。但会耗用服务端处理。

不如用 flash 来连接服务器,并通过 flash 的socket 通道来控制合理。

greystar 2008-09-12
  • 打赏
  • 举报
回复
http://ajaxify.com/run/streaming/xmlHttpRequest/countdown/
WOW128 2008-09-12
  • 打赏
  • 举报
回复
只能客户端通过定时器之类主动去取,服务端无法主动push客户端的。
否则RFC2616就要改写了。
孟子E章 2008-09-12
  • 打赏
  • 举报
回复
ajax不是很好吗?还有什么疑问吗
bizbuy 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 gaoweipeng 的回复:]
引用 8 楼 net_lover 的回复:
客户端请求完毕,客户端与服务器之间是断开的,这就是Web程序的状态是无序的,服务器怎么知道往哪个浏览器上发?


那您觉得有什么可行的办法吗??客户端无刷新获取服务器的数据更新,Ajax?
[/Quote]

作为web应用,当然是ajax

在页面判断,当符合条件时,去向服务器索取新的数据
gaoweipeng7851 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 greystar 的回复:]
http streaming来实现
[/Quote]
能说的再具体些吗?
gaoweipeng7851 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 net_lover 的回复:]
客户端请求完毕,客户端与服务器之间是断开的,这就是Web程序的状态是无序的,服务器怎么知道往哪个浏览器上发?
[/Quote]

那您觉得有什么可行的办法吗??客户端无刷新获取服务器的数据更新,Ajax?
yyixin 2008-09-10
  • 打赏
  • 举报
回复
见到高人了,顶一下,接点分
加载更多回复(19)

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧