-1

我需要 PHP Ajax 方面的指导。

我想开发类似 Gmail 的功能。

现在我们开始吧。

我有两个页面,第一页是登录,第二页是显示。

一旦登录用户将重定向到显示页面,在那里他可以看到其他用户发送的消息。

现在我想实现 ajax,就像每当用户向其他用户发送消息时,其他用户立即通知他/她收到消息并且还需要将其附加到他们的邮箱中。

我知道我可以使用它来做到这一点,setInterval但还有其他方法,因为setInterval可能适用于其中一个,5 sec或者10 sec但我想在其他用户向他发送消息时触发它。

我在zaarly.com和 Gmail 表单中看到了这一点。

提前致谢。

4

3 回答 3

2

如果您想构建“类似 gmail 的东西”,您将需要对以下内容和一些 javascript 技能进行大量研究。它是您将使用的唯一语言。

  • Node.js - 可以使用套接字向浏览器提供实时更新的后端服务器。
  • Backbone.js - 一种构建单页应用程序“像 gmail”的半结构化方式

我还将 Require.js 包含到该列表中,该列表基本上用于异步加载所有 Backbone javascript 文件。它有助于保持应用程序的文件结构可维护。

于 2012-12-06T10:11:06.443 回答
1

Ajax 是一种浏览器端技术。如果浏览器不请求消息,它就无法从服务器接收消息。如果您想为此使用 Ajax,那么您需要使用您建议使用的解决方案setTimeout或类似的解决方案定期 ping 服务器。

事实上,Ajax 对这类事情的用词是错误的。您需要搜索的术语实际上称为Comet。您可以在此处阅读更多相关信息:http ://en.wikipedia.org/wiki/Comet_%28programming%29 。

Comet 是服务器推送到浏览器技术的统称。您的解决方案是 Comet 的众多可能实现之一,尽管它在带宽方面并不是特别有效。上面链接的 wiki 页面列出了许多其他可能的实现目标的方法,您可能希望对其进行调查。但是在谷歌上搜索“Comet”而不是“Ajax”肯定会帮助您在这里进行研究。

希望有帮助。

于 2012-12-06T10:26:23.640 回答
0

我注意到您在评论中声明“即时响应功能”。你应该看看长轮询(推送技术),理解它,然后选择适合工作的语言、技术和架构。

在 web/AJAX 上下文中,长轮询也称为Comet 编程

还有“PHP AJAX”——PHP 是服务器端,JavaScript 是客户端。不要混淆他们,否则你会被搞砸的:)

于 2012-12-06T10:25:23.747 回答