HTTP status code 101 when trying to make POST request
-
Hello everyone.
I'm trying to make a POST request with QNetworkAccessManager and QNetworkRequest to my API, which was made with Phoenix. The get requests works well, however, the post requests does not. It returns status code 101, and I think that's because there's an "Upgrade" header on that request, which I don't now how to remove. Any suggests? -
Hi,
Did you check to which protocol you switched ?
-
Hello SGaist.
I don't remember switching any procotols. Also, POST Requesting works on curl.
Here's my code:void LoginWidget::postRequest(){ QUrl serviceUrl = QUrl("http://192.168.31.184:4000/api/users/signin"); QNetworkRequest request(serviceUrl); QJsonObject json; json.insert("email","nicolas@email.com"); json.insert("password","1234"); QJsonDocument jsonDoc(json); QByteArray jsonData= jsonDoc.toJson(); request.setHeader(QNetworkRequest::ContentTypeHeader,"application/json"); request.setHeader(QNetworkRequest::ContentLengthHeader,QByteArray::number(jsonData.size())); QNetworkAccessManager *networkManager = new QNetworkAccessManager(this); QObject::connect(networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*))); networkManager->post(request, jsonData); } void LoginWidget::replyFinished(QNetworkReply *reply){ int statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(); qDebug() << "Reponse network error" << reply->error(); qDebug() << "Reponse HTTP status code" << statusCode; qDebug() << "Reply content:" << reply->readAll(); reply->deleteLater(); }
The output:
Reponse network error QNetworkReply::UnknownNetworkError
Reponse HTTP status code 101
Reply content: ""