Tässä harjoituksessa tutkitaan kuinka Qt-sovelluksella luodaan uusi rivi book-tauluun. Tässä harjoituksessa muokataan Http GET harjoituksessa luotua sovellusta.
QNetworkAccessManager *manager; QNetworkReply *reply; QByteArray response_data;
void addBookSlot (QNetworkReply *reply);
QJsonObject jsonObj; jsonObj.insert("name","Uusi kirja"); jsonObj.insert("author","Matti Mainio"); jsonObj.insert("isbn","123-456-789"); QString site_url="http://localhost:3000/book"; QNetworkRequest request(site_url); request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json"); //WEBTOKEN ALKU QByteArray myToken="Bearer "+webToken; request.setRawHeader(QByteArray("Authorization"),(myToken)); //WEBTOKEN LOPPU manager = new QNetworkAccessManager(this); connect(manager, &QNetworkAccessManager::finished, this, &CurrentClassName::addBookSlot); reply = manager->post(request, QJsonDocument(jsonObj).toJson());
void MainWindow::addBookSlot (QNetworkReply *reply) { response_data=reply->readAll(); qDebug()<<response_data; reply->deleteLater(); manager->deleteLater(); }
Harjoituksessa lisättiin kirja, jonka tiedot on kovakoodattuna. Voisit toki muokata sovellusta, niin että käyttöliittymässä olisi tekstikentät, joihin lisättävän kirjan tiedot voidaan kirjoittaa.