我有一個小應用程序生成代碼並將其存儲在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是火狐在這種情況下)
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});
}
我希望雙方最終達成協議,以便我可以重定向雙方做X.我設法讓我的Firefox發射到code_game,code_game方法現在發回到Firefox。我怎樣才能讓code_game方法發送給雙方?我已經更新了我的代碼。 – CaptainCarl
Aaaaannndd已修復。我應該在我的code_game方法中通過'io.socket'而不是'socket'發射 – CaptainCarl