Simple example of how to set up an HTTP server.
This example shows how to set up a server using the QHttpServer class. The server is bound to an incoming port using the listen()
function, and the route()
function is used to add a handler for each of several different incoming URLs. For one of the URLs, "/auth", Basic HTTP Authentication is used.
const auto sslCertificateChain = QSslCertificate::fromPath(QStringLiteral(":/assets/certificate.crt")); if (sslCertificateChain.empty()) { qDebug() << QCoreApplication::translate("QHttpServerExample", "Couldn't retrive SSL certificate from file."); return 0; } QFile privateKeyFile(QStringLiteral(":/assets/private.key")); if (!privateKeyFile.open(QIODevice::ReadOnly)) { qDebug() << QCoreApplication::translate("QHttpServerExample", "Couldn't open file for reading."); return 0; } httpServer.sslSetup(sslCertificateChain.front(), QSslKey(&privateKeyFile, QSsl::Rsa)); privateKeyFile.close(); const auto sslPort = httpServer.listen(QHostAddress::Any); if (!sslPort) { qDebug() << QCoreApplication::translate("QHttpServerExample", "Server failed to listen on a port."); return 0; }
In the above example QSslConfiguration
is used to show how to create an SSL configuration for a QHttpServer to serve HTTPS traffic.
Files:
Images:
As part of the free Business evaluation, we offer a free welcome call for companies, to talk about your requirements, and how the Felgo SDK & Services can help you. Just sign up and schedule your call.
Sign up now to start your free Business evaluation: