如何在python中实现pub / sub socket.io客户端?

时间:2015-05-20 15:05:53

标签: python socket.io publish-subscribe

我一直在尝试实现下面代码的python等价物,但似乎无法使其正常工作。

var io = require('socket.io-client')
var socket = io('http://devel.hz.udoidio.info:5000')

socket.on('connect', function () {
  socket.emit('subscribe', 'new-tx')
})

socket.on('new-tx', function (txid) {
  console.log('New tx: ' + txid)
})

我试过这种方法,但它似乎没有产生任何效果。

from socketIO_client import SocketIO, LoggingNamespace

def on_response(*args):
    print 'on_response', args

baseurl = "http://v1.livenet.bitcoin.chromanode.net"
socketIO = SocketIO(baseurl, 80, LoggingNamespace)
socketIO.on('subscribe', on_response)
socketIO.emit('subscribe', 'new-block')
socketIO.wait()

1 个答案:

答案 0 :(得分:2)

我重新解决了这个问题,下面是正确的解决方案。

from socketIO_client import SocketIO

def on_response(*args):
    print 'on_response', args

baseurl = "http://devel.hz.udoidio.info"
with SocketIO(baseurl, 5000) as socketIO:
    socketIO.on('new-tx', on_response)
    socketIO.emit('subscribe', 'new-tx')
    socketIO.wait()