【发布时间】:2018-02-09 15:45:32
【问题描述】:
我正在尝试连接到通过 apiport 提供 REST Api 的扫描仪。在我这样做之前,我必须使用 PyQt5 连接到扫描仪并签署一个挑战。我有一个 C++ 代码作为示例,但我找不到相应的 PyQt 类/方法。
基本上我正在寻找一种方法来从 C++ 中替换这些行:
QWebSocket socket;
QString address = "127.0.0.1";
QString port = "1234";
connect(&socket,&QWebSocket::textMessageReceived,this,&Client::onTextMessageReceived);
socket.open(QUrl(QString("ws://%1:%2").arg(address).arg(port)));
我的问题是这一行:
connect(&socket,&QWebSocket::textMessageReceived,this,&Client::onTextMessageReceived);
有人可以帮我解决这个问题吗? 到目前为止,我所拥有的是:(但它会引发错误: TypeError: native Qt signal is not callable)
class Client(QtCore.QObject):
def __init__(self, parent):
super().__init__(parent)
self.client = QtWebSockets.QWebSocket("",QtWebSockets.QWebSocketProtocol.Version13,None)
#self.client.error.connect(self.error)
print("Trigger")
trigger = self.client.textMessageReceived()
#self.client.open(QUrl("ws://"+UDP_IP+":"+str(notificationsport)))
def ontextmsgreceived():
print("Text MSG received")
def close(self):
self.client.close()
global client
app = QApplication(sys.argv)
client = Client(app)
app.exec_()
非常感谢您的帮助!
【问题讨论】: