我有一个小应用程序可以生成代码并将其存储在 mongodb(我的 chrome 浏览器)中。另一个用户(我的 firefox 浏览器)输入给定的代码并广播它,让我的 chrome 知道他在那里。
现在我希望我的 chrome 浏览器向自己和我的 firefox 浏览器发出一个协议,以便在发出协议的那一刻它们都被相同的函数解析。
然而,关键是我在我的终端中只有 1 个控制台日志,这让我认为只有 Chrome(或 Firefox,我怀疑)正在监听发射。
谁能看看为什么两个浏览器都没有收到“协议”发射?
我的 app.js:(连接部分)
io.sockets.on('connection', function (socket) {
socket.on('code_game', function (data) {
if (codeToUse == data.code) {
//The receiving end received the proper code from the sending end
console.log(data.secondUser + ' is verbonden via de code: ' + data.code);
//Emit to all parties to let everyone know there's a connection
socket.emit('agreement', {
userOne: {
name: 'Timen',
code: codeToUse
},
userTwo: {
name: data.secondUser,
code: data.code
}
});
}
});
});
在我看来,被调用的 JS 文件:(在这种情况下,sendToFirstUser 是 Firefox)
var receivingUsersCode = false;
var receivingUsersName = false;
var socket = io.connect('http://localhost');
socket.on('agreement', function (data) {
console.log("hooray");
});
function setReceivingData(code, username) {
receivingUsersCode = code;
receivingUsersName = username;
ding = 'drie';
$('#new_game').css('display', 'block');
$('.theCode').html(receivingUsersCode);
}
function sendToFirstUser(code, username) {
socket.emit('code_game', { code: code, secondUser: username});
}