Ajax 谷歌文档自动保存是如何工作的?
好吧,我知道这听起来很普通。但我的意思是在AJAX级别上。我曾尝试使用Firebug跟踪网络连接和帖子,这是一个谜。有人知道他们是如何在不破坏网络/浏览器的情况下实现即时自动保存的吗?我的猜测(这只是猜测)是谷歌使用推送服务。这似乎是最可行的选择,因为他们的聊天客户端(也集成在窗口中)也使用它以最小的延迟发送“实时”消息 我打赌他们有一个完整的设置来管理所有与连接相关的东西,并发送标志来触发特定的元素。您不会看到连接触发器,因为最初的页面访问建立了连接,然后在页面打开的整个过程中挂起。e、 gAjax 谷歌文档自动保存是如何工作的?,ajax,google-docs,Ajax,Google Docs,好吧,我知道这听起来很普通。但我的意思是在AJAX级别上。我曾尝试使用Firebug跟踪网络连接和帖子,这是一个谜。有人知道他们是如何在不破坏网络/浏览器的情况下实现即时自动保存的吗?我的猜测(这只是猜测)是谷歌使用推送服务。这似乎是最可行的选择,因为他们的聊天客户端(也集成在窗口中)也使用它以最小的延迟发送“实时”消息 我打赌他们有一个完整的设置来管理所有与连接相关的东西,并发送标志来触发特定的元素。您不会看到连接触发器,因为最初的页面访问建立了连接,然后在页面打开的整个过程中挂起。e、 g
- 浏览器建立了到[example]api.docs.google.com[/example]的连接并保持打开状态
- 失去连接(超时等),在这种情况下会重新建立连接
- 浏览器窗口已关闭
SERVER: CLIENT:
------- -------
DOC_FETCH mydocument.doc
DOC_CONTENT mydocument.doc 15616 ...
DOC_AUTOSAVE mydocument.doc 24335 ...
IM collaboratorName Hi Joe!
IM_OK collaboratorName OK
AUTOSAVE_OK mydocument.doc OK
其中,DOC\u FETCH
命令表示我需要数据。服务器用相应的文档内容答复。然后客户端触发DOC\u AUTOSAVE
。考虑到潜在的同时请求的数量,我敢打赌它们会在请求/响应中保留“上下文”,以便在发送某个内容后可以进行匹配。在本例中,它知道IM_-OK
匹配第二个请求(IM
),而AUTOSAVE_-OK
匹配第一个请求(AUTOSAVE
)——类似于AOL的IM协议的工作方式
同样,这只是一个猜测
--
为了证明这一点,请使用ethereal之类的工具,看看您是否可以看到信息在后台传输。window.setInterval
使用AJAX和一些条件?不确定这是否正确-如果您查看控制台,它似乎并没有对@Brad Christie的答案做太多感谢,然而,我不清楚如何实现它。