Tässä harjoituksessa tutkitaan kuinka Qt-sovelluksella luodaan uusi rivi book-tauluun. Tässä harjoituksessa muokataan Http GET harjoituksessa luotua sovellusta.
QNetworkAccessManager *postManager; 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 postManager = new QNetworkAccessManager(this); connect(postManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(addBookSlot(QNetworkReply*))); reply = postManager->post(request, QJsonDocument(jsonObj).toJson());
void MainWindow::addBookSlot (QNetworkReply *reply) { response_data=reply->readAll(); qDebug()<<response_data; reply->deleteLater(); postManager->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.