当前位置: 首页 > 面试题库 >

在没有客户端交互的情况下,GMail Chat如何能够发出AJAX请求?

步炯
2023-03-14
问题内容

所有HTTP响应都要求客户端启动它们,即使是使用AJAX进行的响应。但是,即使我只是坐在舒适的电脑椅上看着但不与浏览器进行交互,GMail的聊天功能仍能够接收来自其他用户的消息。他们是如何做到的呢?


问题答案:

该技术被称为“ comet”,但也被称为“ server push”,“ reverse ajax”等。

这是关于将数据从服务器推送到浏览器,并保持http连接保持活动状态。在Wikipedia文章(英文版)上找到有关它的更多信息。

另外,这是 来自DWR的Joe Walker的精彩演讲,他在其中谈论彗星。



 类似资料:
  • 我想在Android Studio中有一个BackgroundService,它每隔几分钟运行一次,检查JSON文件是否被更改。我的问题是如何让服务运行整个时间e。例如,在待机状态下,在启动后&在应用程序启动后。我的意思是,WhatsApp或其他消息应用是如何始终运行任务的?

  • 这要求我使用客户机id和客户机秘密,并且我要求在Azure VM中运行时不将秘密存储在系统上。 是否有方法使用托管标识获取应用程序机密或生成可用于login.microsoftonline.com OAuth终结点的令牌?

  • 问题内容: 我有一个工作的json服务,看起来像这样: 查询对象看起来像这样,当发布该Query对象的json表示形式时,效果很好。 现在,我想从客户端填充该对象,并使用Jersey客户端将该Query对象发布到服务中,并获得一个JSONObject作为结果。我的理解是,无需先将其转换为json对象,然后将其发布为String即可完成。 我已经尝试过类似的操作,但是我想我错过了一些。 我正在使用J

  • 有人能帮我回答以下问题吗: 我有一个启用SSL的REST服务器和一个位于两台不同计算机上的REST客户端。两者都是用Spring Boot构建的。服务器将具有。p12或。pfx证书。

  • 我正在创建一个Android应用程序,使用一个普通的谷歌驱动器帐户作为一个应用程序-养号,如上所述,以令人难以置信的简洁,这里: 使用常规Google帐户作为应用程序拥有的帐户 不幸的是,有关如何在云端硬盘上执行任何操作的所有说明都指向客户端密钥,如下所述: Google API控制台-缺少客户端机密 对于已安装的应用程序,这实际上不再存在。我设法通过构建一个实际的网页,在难以置信的痛苦中获得了O

  • TL;DR:将@webservlet(“/find-customers”)放在servlet(通过Tomcat 7部署)的开头并不是将servlet映射到host:port/webproject/find-customers中,即使servlet位于src文件夹中。