Seite 1 von 1

JPEG von einer PHP Antwort runterladen

Verfasst: 3. Oktober 2010 10:41
von ergin
Hallo,

ich habe folgendes Problem:

Ich rufe ein PHP Skript auf und dieser schickt mir ein JPEG Bild zurück.

Code: Alles auswählen

    QNetworkRequest request;
    QString url = PICTURE_URL;
    url.append("u=");
    url.append(userNickName);
    request.setUrl(QUrl(url));
    QNetworkReply *reply = pNetworkManager->get(request);

    QObject::connect(reply, SIGNAL(downloadProgress(qint64,qint64)),
                     SLOT(slotSetProgress(qint64,qint64)));

    QObject::connect(pNetworkManager, SIGNAL(finished(QNetworkReply *)),
                     SLOT(slotPictureRequestFinished(QNetworkReply*)));
Mein slotRequestFinished sieht wie folgt aus:

Code: Alles auswählen

        QImageReader imageReader(reply);
        if (imageReader.canRead()) {
        delete pResultByteArray;
        pResultByteArray = new QByteArray(imageReader.format());
        if (pListener) {
            pListener->downloadFinished();
        }
Kann mir jemand ein Tip geben?

Verfasst: 3. Oktober 2010 11:10
von padreigh
Hast du eine konkrete Frage / ein Problem?

Verfasst: 3. Oktober 2010 13:25
von ergin
So wie ich es gemacht habe geht es nicht. Wo lieg der Wurm?

Verfasst: 3. Oktober 2010 13:43
von Christian81
'Geht nicht' ist immer eine sehr gute Fehlerbeschreibung...
Was geht nicht? Was sagt der Debugger? Kommt er überhaupt in Deinem Slot an usw.

Verfasst: 3. Oktober 2010 14:06
von ergin
Diese Prüfung liefert false zurück: imageReader.canRead()

Habe ich es überhaupt richtig gemacht? Muss man vielleicht noch Header Infos an dem QNetworkRequest Objekt setzen?

Verfasst: 3. Oktober 2010 14:18
von Christian81
Ich bin mir gerade nicht sicher ob canRead() hier funktioniert. Einfach die Daten mal in eine Datei speichern und sie anschauen.

Verfasst: 3. Oktober 2010 14:23
von ergin
replay->readAll liefert 0 zurück.

Verfasst: 3. Oktober 2010 14:32
von Christian81
Dann ist die URL wohl nicht korrekt - aber das kannst du auch allein testen...

Verfasst: 3. Oktober 2010 14:44
von ergin
So sieht die URL aus:

http://www.shaketest.urspacecity.de/ptc ... p?&u=ergin

Sieht der Request von mir gut aus?

Verfasst: 3. Oktober 2010 14:52
von Christian81
Woher soll ich das wissen? Aus dem Code geht das nicht hervor. Ich würde die URL eh nicht von Hand zusammenbauen sondern die QUrl-Funktionen dazu benutzen.
Also entweder Du schaust Dir z.B. QNetworkReply und dessen Funktionen ordentlich an - sind ja genug da welche zum Debuggen benutzt werden können oder die Standardantwort - gib uns ein minimal kompilierbares Beispiel das Deinen Fehler aufzeigt.