2016-11-21 74 views
0

現在無法使用sails.sockets.js在服務器端的onConnect事件爲socket客戶端偵聽..如何使用sails.sockets.js的onConnect事件回調socket.io客戶端?

onConnect: function(session, socket) { 
    socket.on('chat message', function(msg){ 
     console.log(msg); 
     console.log("socket.id: " + socket.id); 
     sails.sockets.broadcast(socket.id, 'chat message', {msg:msg}); 
    }); 
} 

請讓我知道什麼叫回你的插座的正確方法-client使用插座的服務器事件,如爲onConnect ..

回答

0

如果使用標準sails.js套接字庫:

$(document).ready(function() { 
    io.socket.on('connect', function() { 

    }); 


    io.socket.on('chat message', function(data) { 
     io.socket.post('/routeToAction', { 

     }, function(data, jwres) { 

     }); 
    }); 
}); 
0

新版本,你必須使用配置/ bootstrap.js文件監聽事件

module.exports.bootstrap = function(cb) { 

    // handle connect socket first event executes after logged in 
    sails.io.on('connect', function (socket){ 
     // store facebook token here 
    }); 

    // handle custom listener for other stuff 
    sails.io.on('doSomeStuff', function (socket){ 
     // check facebook token match with requested token 
    }); 
cb(); 
}; 

客戶:你可以簡單的EMIT「doSomeStuff」登錄後與Facebook和令牌傳遞每個請求

0

最後正在成爲網絡插座,誰知道回來然後通過WebSockets推technoligy的ANF規定缺乏專業..

如何開始使用WebSockets: 第1步:選擇你的應用程序的任何WebSocket的框架,並在客戶端和服務器的多功能轉換插座插座安裝客戶端在服務器端與偵聽器(imp。)。

第2步:一旦你準備好與插座設置在兩側,然後您的客戶端/瀏覽器將其通過的onConnect聽衆或事件在服務器端傾聽每一個頁面加載後的連接。

第三步:雙方給你插座對象,它包含在服務器端的管理要麼加入任何通道/房間或只是爲了讓廣播或爆炸的每個客戶端套接字ID全成連接。 記住:

我。 Socket對象負責定義客戶端和服務器端的偵聽器。使用套接字對象,您可以將任何數據傳遞給偵聽器。

ii。當您嘗試將數據從客戶端推送到服務器時,套接字連接非常有用,反之亦然。

iii。一旦你明白如上所述,你可以用它來製作你的小型聊天工具。

將很快分享相似的工作片斷..

//爲onConnect在服務器端 的onConnect事件:函數(會話,插座){ 的console.log( 「插座連接成功:」 + socket.id);

socket.on('chatAgency', function(data){ 
sails.sockets.broadcast(data.agencyId,"chatAgency", {message:data.message,agencyId:session.agencyId}); 
}); 

},