避免iPhone不断轮询网页
我有一个iPhone应用程序,只要对服务器进行更改就需要更新。 我怎样才能让服务器将数据“推送”到iPhone而不是iPhone不断地轮询Web服务?
编辑:我希望th iPhone尽快接收JSON更新,只要服务器处理它们,而不必请求。
我想因为服务器是一个叫做Comet的web服务,但我还没有看到一个好的iPhone例子。
这取决于你有多冒险。 这里有两种选择:
更新:看看iStreamLight - iPhone的Lightstreamer协议实现。 如果它不适合您的Comet网络服务,则可能需要下到较低级别,该级别使用套接字流来维持TCP连接。 为了简化处理JSON数据结构的任务,您可能需要为Objective-C使用JSON框架。
你需要的是某种COMET框架(比如光源)。 有几种方法可以做到这一点 - 套接字连接或HTTP服务器,它们持有你的轮询,直到有一些数据可用于交付或直到HTTP请求超时。 其他选项包括使用诸如Flash或Silverlight / Moonlight之类的插件(假设使用monotouch可以在iPhone上使用这种插件?)
一个能以非常高效的方式移动大量数据的新的基于IIS的新COMET框架是来自Frozen Mountain的WebSync,它支持托管的基于COMET的PubSub框架(称为WebSync on Demand),可以根据您的负载进行扩展。 它通过JavaScript很好地工作,并有一个非常干净的API。
这可能是在其他文章中提到的,但http://code.google.com/p/istreamlight/是一个检查出的好地方。 它使用lightstreamer服务器(不知道这一点)。你可以看看这是否是你想为你的应用程序实现一个彗星客户端。
我真的希望我能更有帮助。 如果你正在寻求一种方法来做到这一点在JavaScript中,我会完全!
祝你好运,
-Todd
链接地址: http://www.djcxy.com/p/12919.html