[Interest] QtWebsocket and Node.js

Nuno Santos nunosantos at imaginando.pt
Sun Jun 24 19:02:42 CEST 2018


Hi,

I’m trying to establish a connection between a QtWebsocket client and a Node.js websockets server. I’m using the bare minimum. On the Node.js side I’m. Using Primus to be able to easily switch to other web sockets implementations. S far I have only tried with websockets implementation and the source code resumes to the following lines:

'use strict';

var Primus = require('primus');
var http = require('http');

var server = http.createServer();
var primus = new Primus(server, { transformer: 'websockets' });

primus.on('connection', function(socket) {
  socket.on('data', function ping(message) {
    console.log('received a new message', message);
    socket.write({ ping: 'pong' });
  });
});

server.listen(8080);

And on the Qt side:

connect(&_webSocket, SIGNAL(connected()), this, SLOT(onConnected()));
connect(&_webSocket, SIGNAL(disconnected()), this, SLOT(onDisconnected()));
connect(&_webSocket, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(onError(QAbstractSocket::SocketError)));

_webSocket.open(QUrl("ws://localhost:8080"));

Where:

void Controller::onConnected()
{
    qDebug() << "on connected";
}

void Controller::onDisconnected()
{
    qDebug() << "on disconnected";
}

void Controller::onError(QAbstractSocket::SocketError error)
{
    qDebug() << "error" << error;
}


When I start the Qt app with the server already running nothing gets printed out to console.

However… if I stop the server it displayed the following lines on the Qt app side:

error QAbstractSocket::RemoteHostClosedError
on disconnected

Has anyone stumbled on a similar problem before?

Thanks,

Regards,

Nuno

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20180624/1b50b057/attachment.html>


More information about the Interest mailing list