由于标题很明显,我需要为未经授权的用户发回一些错误消息,并且我需要知道如何实现这一点,例如我需要将此消息发送给用户
你没有任何用户名开始聊天
并在用户浏览器中打印我应该怎么做?客户端代码是这样的
//this is the client side code
var socket = io.connect('http://localhost', { resource: '/chat/app.js' });
// on connection to server, ask for user's name with an anonymous callback
socket.on('connect', function(){
// call the server-side function 'adduser' and send one parameter (value of prompt)
socket.emit('adduser')
});
socket.socket.on('error', function (reason){
console.log('Unable to connect Socket.IO', reason);
});
但我进入控制台的原因是
无法连接 Socket.IO 握手错误
我应该如何打印导致用户没有得到授权的消息?
这是服务器端代码
var io = require('socket.io').listen(80);
io.configure(function (){
io.set('authorization', function (handshakeData, callback) {
// findDatabyip is an async example function
findDatabyIP(handshakeData.address.address, function (err, data) {
if (err) return callback(err);
if (data.authorized) {
handshakeData.foo = 'bar';
for(var prop in data) handshakeData[prop] = data[prop];
callback(null, true);
} else {
//THIS IS THE MESSAGE *********************************************
callback('you dont have any username to begin chat', false);
}
})
});
});