socket.io 1.0 でいろいろ変更されてて大変だった
物凄く久しぶりに socket.io を使ってみたらいつのまにか 1.0 を迎えていたようで。 いろいろと互換性がなくなる変更があったようで、ちょっと古いコードを動かそうとしたら見事に怒られた。
まず socket#set, socket#get なんてメソッドないよって言われて混乱してたんだけど下記にようにやればいいらしい。
// 0.9 SET socket.set('roomname', data, callback) // 0.9 GET socket.get('roomname', callback) // 1.0 SET socket.roomname = roomname; // 1.0 GET var roomname = socket.roomname;
あと io.sockets なんてないよって言われて困ったんだけど下記の通り。
// 0.9 io.sockets.socket(target).emit('message', message); // 1.0 socket.to(socket.id).json.emit('message', message);
たぶんまだいっぱいハマりどころあると思うんだけど今のところこれぐらいしか困ってないのでわからない。