Http POST - form-data übertragen

Alles rund um die Programmierung mit Qt
Antworten
th3AddY
Beiträge: 11
Registriert: 7. Februar 2013 07:07

Http POST - form-data übertragen

Beitrag von th3AddY »

Hallo,

Wie der Titel schon sagt, möchte ich via POST Daten vom Typ form-data senden. Jedoch bekomme nur den Fehler "ProtocolUnknownError".

Hier der Code:

Code: Alles auswählen

QUrlQuery query;
query.addQueryItem("duration", duration);

QUrl url;
url.setUrl("...");
url.setQuery(query);

QNetworkRequest request(url);

QHttpPart part;
part.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"...\""));
part.setBody(data);

QHttpMultiPart multipart;
multipart.setContentType(QHttpMultiPart::FormDataType);
multipart.append(part);

QNetworkReply* reply = getNam()->post(request, &multipart);

QEventLoop loop;
connect(reply, SIGNAL(readyRead()), &loop, SLOT(quit()));
connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), &loop, SLOT(quit()));
loop.exec();

QByteArray result = reply->readAll();
QNetworkReply::NetworkError error = reply->error();
Ich benutze Qt 5.0.1
Wenn ich diese POST-Anfrage manuell durchführe (z.B. mit dem Chrome-Plugin Postman), funktioniert alles wie erwartet.

Was mache ich falsch?
Ich wär für Hinweise echt dankbar.

Viele Grüße
Daniel
veeman
Beiträge: 280
Registriert: 3. Oktober 2012 01:43
Kontaktdaten:

Re: Http POST - form-data übertragen

Beitrag von veeman »

Wahrscheinlich setzt du die Url Falsch, ggf musst du am Anfang "http://", "https://" etc angeben.
Antworten