Ich bin im Moment dabei die Download-Engine für mein Programm zu schreiben und bin jetzt bei einem Problem gelandet, wo ich im Moment nicht weiter weiß.
Das Problem liegt daran, das ich mit QHttp mehrere Verbindungen gleichzeitig aufbaue und nicht weiß wie ich die empfangenen Daten dem jeweiligen Auftrag zuordnen soll.
Also im Klartext ruft meine Hauptroutine die URLs so auf:
Code: Alles auswählen
http->request(header, buffer);Damit die angekommenen Daten verarbeitet werden können, habe ich zur Zeit zwei Connections erstellt:
Code: Alles auswählen
connect(http, SIGNAL(responseHeaderReceived(const QHttpResponseHeader &)), this, SLOT(Cookie(const QHttpResponseHeader &)));
connect(http, SIGNAL(done(bool)), this, SLOT(Fertig()));Das heißt, wenn ich die Daten abschicke über "http->request(header, buffer);" ich von http->currentId() eine 1 als ID bekomme. Wenn dann wenige Momente später das Signal "responseHeaderReceived" ausgelöst wird und ich in der Funktion Cookie lande, erhalte ich über http->currentId() eine 3 zurück. Ich hab's mehrfach getestet und die Werte sind immer dieselben, obwohl ich nur eine QHttp-Request geschaltet habe.
Ich habe auch schon versucht die Connections so zu verändern, das sie http->currentId() an Cookie liefern, aber das klappte auch nicht.
Deshalb meine Frage, wie kann ich eindeutig feststellen zu welchem Request die empfangenen Daten gehören?
Im Moment stehe ich da auf dem Schlauch.
Gruß,
Locutus