HTTP POST En Boucle Pour Chaque Item
Bonjour tout le monde,
Me revoilà, un peu perdu, avec un nouveau problème tout simple j'en suis sur.
Je dois effectuer un POST HTTP avec Indy pour chaque Item d'un ListBox.
Pour le moment, mon code donne ça :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| for Index := 0 to Form1.ListBox1.Items.Count -1 do
begin
http := TIDHttp.Create(nil);
http.HandleRedirects := True;
http.ReadTimeout := 5000;
param := TStringList.create;
param.Clear;
param.Add('login='+Form1.Edit1.Text);
param.Add('password='+Form1.Edit2.Text);
param.Add('post=submit');
valid := True;
url := ListBox1.Items[Index];
try
Form1.RichEdit1.Lines.Add(AnsiReplaceStr(Utf8ToAnsi(Form1.IdHttp1.Post, #10, #13#10)+' : SUCCESS');
except
on E: Exception do
Form1.RichEdit1.Lines.Add(AnsiReplaceStr(Utf8ToAnsi(Form1.IdHttp1.Post, #10, #13#10)+' : FAILED');
end;
end; |
Ça fonctionne pour le premier Item mais ça ne passe pas au suivant...
Ça me semble assez basique alors j'ai du louper quelque chose.
Comme c'est la première fois que j'utilise Indy et POST (...) je me demande si le problème ne vient pas d'une erreur serveur qui stop le process... (?)
Car à chaque fois que j'essai de faire un POST (in ou hors de la boucle) j'obtiens une 'erreur' 302 FOUND, alors que le POST s'est pourtant correctement effectué.
Et c'est pas terminé (oui, désolé) : peu importe la réponse du serveur, aucune ligne SUCCESS ou FAILED n'est ajoutée au RichEdit1...
Mon cerveau à trop chauffé aujourd'hui, j'ai besoin d'une pause et d'un peu d'aide :)
Mille mercis par avance !
Beny