是否可以使用socket.io取消订阅MtGox API通道?

时间:2013-02-10 01:44:47

标签: javascript api socket.io

以下代码似乎没有做任何事情。有没有取消订阅的方法?

var MTGOX  = 'https://socketio.mtgox.com/mtgox';
var conn = io.connect(MTGOX);
conn.emit({ 
  'channel':'d5f06780-30a8-4a48-a2f8-7ed181b4a13f',
  'op':'mtgox.unsubscribe'
});

2 个答案:

答案 0 :(得分:2)

Mt.Gox API响应“消息”事件,因此您应该使用Socket.IO的send命令。

conn.send({
    "channel": "d5f06780-30a8-4a48-a2f8-7ed181b4a13f",
    "op": "unsubscribe"
});

要从频道取消订阅,请发送操作“取消订阅”。要订阅,请发送操作“mtgox.subscribe”(as listed on the bitcoin.it wiki)

这是替代方法(澄清):

conn.emit('message', {
    "channel": "d5f06780-30a8-4a48-a2f8-7ed181b4a13f",
    "op": "unsubscribe"
});

答案 1 :(得分:1)

此处的示例:https://en.bitcoin.it/wiki/MtGox/API/Streaming#op:subscribe_and_op:unsubscribe将操作名称显示为“取消订阅”,而您有“mtgox.unsubscribe”。你可以尝试没有前缀,和/或让我们知道你从哪里得到这个前缀?