@מנצפך אמר בשאלה כללית ב WebSocket:
https://stackoverflow.com/a/6756431
כאן יש אפשרות לעשות emit, ואז לחכות להאזין לתשובה שחוזרת.
Server
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket) {
socket.on("getSomeData", function (name, fn) {
fn({ data: "some random data" });
});
});
Client
< script src = "http://localhost/socket.io/socket.io.js" ></script >
<script>
var socket = io.connect('http://localhost');
socket.emit("getSomeData", function(data) {
console.log(data);
});
</script>
זה בגדול מה שחיפשתי. שימו לב שהקליינט שולח בקשה "getSomeDate", ומקבל את ה data שהוא רוצה.
פשוט וקל.
רק להוסיף
שאפשר גם לשלוח דאטא, רק לדאוג שהארגומנט האחרון יהיה הפונקציה
var socket = io.connect('http://localhost');
socket.emit("getSomeData", 'this is data', function(data) {
console.log(data);
});