CREATE TABLE book( id_book SMALLINT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255), author VARCHAR(255), isbn VARCHAR(255)) Engine=InnoDB;
Tässä esimerkissä esitetään, kuinka book-taulun data saadaan haettua Qt-sovellukseen.
Jotta esimerkki toimii, on ensin kirjauduttava sovellukseen ja tähän tarvitaan login-systeemi, jossa käytetään http-post metodia.
#include <QtNetwork> #include <QNetworkAccessManager> #include <QJsonDocument>
QNetworkAccessManager *manager; QNetworkReply *reply; QByteArray response_data;
private slots: void getBookSlot (QNetworkReply *reply);
QString site_url="http://localhost:3000/book"; QNetworkRequest request(site_url); //WEBTOKEN ALKU QByteArray myToken="Bearer "+webToken; request.setRawHeader(QByteArray("Authorization"),(myToken)); //WEBTOKEN LOPPU manager = new QNetworkAccessManager(this); connect(manager, &QNetworkAccessManager::finished, this, &MainWindow::getBookSlot); reply = manager->get(request);
void MainWindow::getBookSlot (QNetworkReply *reply) { response_data=reply->readAll(); qDebug()<<"DATA : "+response_data; QJsonDocument json_doc = QJsonDocument::fromJson(response_data); QJsonArray json_array = json_doc.array(); //Tässä toimenpiteet JSON-arrayn käsittelyyn reply->deleteLater(); manager->deleteLater(); }