我有一个应用程序,其中用户的个人资料带有软木板。
当用户在其他用户个人资料上写东西时,该个人资料页面上的每个人都应该收到发射。
在客户端,我像这样连接到套接字服务器:
window.onload = function() {
var socket = io.connect("https://10.94.30.134:8080");
// ...
};
请注意,client.js 会在每次访问我的 profile.html 时加载并连接。我无法想象这是一个好方法。
然后在服务器端,我rooms
用来确定用户当前位于哪个配置文件页面。
sio.on("connection", function(socket){
socket.join(socket.handshake.session.last_visited_profile);
// ...
socket.on("send-corkboard-message", function(data) { // ...
socket.on("send-chat-message", function(data) { // ...
});
目前的方法有效,但我认为还有很多需要改进的地方。我在使用移动设备测试此设置时也遇到了问题。他们需要大约 5-10 秒来连接到套接字服务器。(这就是为什么我认为将套接字连接存储在客户端全局的某个地方会更好。)如果是这样,我没有机会让套接字在连接时加入房间,我宁愿在我的路由或客户端中这样做有订阅事件之类的东西吗?
在"send-corkboard-message", "send-chat-message"
事件中包含所有 socket.io 事件( )是一个好方法吗?connection
也许您可以帮助或将我链接到一些可以改善我当前情况的 socket.io 架构。提前致谢!