Ich versuche, eine benutzerdefinierte Version zu erstellen, die für meine Bedürfnisse von emit() und on() -Methoden von socket.io entspricht. Ich konnte es für die emit() -Methode wie dies tun:Wrap socket.io emit und auf Methoden
socket._emit = function() {
console.log('socket._emit ', arguments);
event = arguments[0];
data ={
'username': user.username,
'token': user.token,
'data': arguments[1]
};
socket.emit.apply(this, [event, JSON.stringify(data)]);
};
ich Probleme, die für ein() Methode zu tun haben, weil ich nicht in der Lage bin, die Daten der Callback-Funktion zu erhalten , so dass jetzt meine benutzerdefinierte _on() nichts besonderes macht, ruft nur den Standard auf().
socket._on = function() {
socket.on.apply(this, arguments);
};
Mein Ziel ist es, alle vom Callback der on() -Methode empfangenen Daten zu protokollieren. Ich habe so etwas versucht, aber nicht funktioniert.
socket._on = function() {
callback = function(){
console.log('socket._on ', //arguments from arguments[1]()//);
arguments[1]();
}
socket.on.apply(this, [arguments[0], callback()]);
};
Irgendeine Idee, wie man meinen Test verbessert?
Danke, Alessandro
Haben Sie das schon ausgearbeitet? – Garre
Ja, ich konnte einige Daten vom Rückruf erhalten. Ich habe eine Antwort mit dem Code geschrieben. – alessandrocaprarelli