我想用 php 和 jquery 制作一个聊天应用程序。但是jquery脚本对客户端可见,另一个问题是每次都需要通过调用间隔方法来更新聊天显示面板。所以我的问题是,有没有其他方法可以开发像 Gmail 聊天应用程序这样的聊天应用程序。 因为 Gmail 聊天是显示存在。当用户离线时自动显示离线状态。当用户在聊天框中输入文本时,立即显示在聊天显示中。所以我想让大家喜欢这个应用程序。
请指导我......
谢谢你,
最佳答案
您可以使用 WebSocket 来完成此操作。有一些很酷的 WebSockets 工具,例如:
- 棘轮 - http://socketo.me/
- Spanner - https://github.com/varspool/Wrench
- phpwebsocket - https://code.google.com/p/phpwebsocket/
- apache-websocket - https://github.com/disconnect/apache-websocket
使用 WebSockets,您可以将收到的消息附加到聊天日志中,而不是像您所做的那样更新整个内容。
如果您选择(或必须)继续向服务器请求新消息,因为并非所有托管提供商都允许 WebSocket,以下是一些可能对改进聊天应用程序有用的提示:
在客户端存储最后收到的消息id,这样当你向服务器请求新消息时,你可以发送这个id,它只会向你发送你还没有收到的消息,从而避免不必要的麻烦流量。
在服务器端,记录客户端上次请求新消息的时间,以便您可以定义超时以检测用户断开连接。
为避免服务器或客户端因超出其处理能力的请求而重载,请在定义下一个请求的时间间隔时考虑服务器回答上一个请求所花费的时间,如下所示:
- 客户端请求消息
- 服务器在 100 毫秒内回复
- 客户端在再次请求之前等待 100 毫秒
- 服务器在 200 毫秒内回复
- 客户端在再次请求之前等待 200 毫秒
- ...
关于php - 使用 php、Jquery 的聊天应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18637939/