AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke [GELÖST] IdHTTP POST WorkCount Problem
Thema durchsuchen
Ansicht
Themen-Optionen

[GELÖST] IdHTTP POST WorkCount Problem

Ein Thema von BlackRaven · begonnen am 20. Aug 2012 · letzter Beitrag vom 21. Aug 2012
Antwort Antwort
BlackRaven

Registriert seit: 3. Sep 2004
Ort: Berlin
7 Beiträge
 
FreePascal / Lazarus
 
#1

[GELÖST] IdHTTP POST WorkCount Problem

  Alt 20. Aug 2012, 14:55
Hallo,

ich Sende mit einem TIdHTTP ein Post Befehl an einen Server, der eine Datei beinhaltet, was auch alles wunderschön klappt.
Wenn von meiner Seite alles geklappt hat, schickt der Server eine Antwort zurück, das alles gut lief.

Wenn ich jetzt aber mit AWorkCount bei OnWork anzeigen will, wieviel schon hochgeladen wurde, klappt das auch, aber sobald der ursprüngliche Upload fertig ist, steht in AWorkCount was an Daten übertragen wurde von der Antwort des Server.

Jetzt suche ich einen Lösungsansatz, wie ich verhindern kann, das ich nur die AWorkCount daten des Uploades hab.

Über Hilfen würde ich mich sehr freuen

Edit
hier noch der Source dazu:

Das steht im Button OnClick:
Delphi-Quellcode:
upload := TIdMultiPartFormDataStream.Create;
upload.AddFile('file', Edit1.Text, 'multipart/form-data');
  
fileserver := 'http://beispielurl.com/upload.php';

upload_result:= IdHTTP1.Post(fileserver, upload);

Geändert von BlackRaven (21. Aug 2012 um 01:56 Uhr) Grund: gelöst
  Mit Zitat antworten Zitat
Benutzerbild von geskill
geskill

Registriert seit: 17. Feb 2007
Ort: NRW
420 Beiträge
 
Delphi 2010 Professional
 
#2

AW: IdHTTP POST WorkCount Problem

  Alt 20. Aug 2012, 23:21
Hey,
wird denn bei dir kein WorkBegin() Event ausgelöst. Darüber wird man doch benachrichtigt ob gerade gelesen/geschrieben wird und wieviel erwartet wird (AWorkCountMax).

Ansonsten weißt du über die Größe des Upload-DataStreams + feste Headergröße doch wieviel gesendet wird. Der Rest müsste also die Antwort sein.

Vielleicht wird auch ein Redirect() Event ausgelöst, also nachdem der Server die Daten empfangen hat. Alles was nachdem an Daten anfällt könntest du doch verwerfen.

Mag sein, dass ich jetzt was übersehen habe, aber ist schon spät und musste deine Frage erst paar mal lesen
Sebastian
  Mit Zitat antworten Zitat
BlackRaven

Registriert seit: 3. Sep 2004
Ort: Berlin
7 Beiträge
 
FreePascal / Lazarus
 
#3

AW: IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 01:55
Danke für deine Antwort.

Ja die sache ist etwas schwammig Formuliert, gebe ich zu, allerdings weiß ich nicht, wie ich es anders erklären soll.

Aber ich glaube ich habe das ganze gelöst.
Da ich mehrere Idhttp Posts sende, musste ich nur den richtigen markieren, indem ich vorher ein uploaded := TRUE und direkt danach ein uploaded := FALSE setze, also
Delphi-Quellcode:
uploaded := TRUE;
upload_result:= IdHTTP1.Post(fileserver, upload);
uploaded := FALSE;
Hier hat mir dann dein Tip mit geholfen, mir mal die Ereignisse anzuschauen, und dabei ist mir aufgefallen das ich die AWorkMode (TWorkMode) komplett übergangen habe und ich damit herausfinden konnte, wann OnWork Uploaded bzw das Ergebnis empfängt (Downloaded)

Delphi-Quellcode:
  if (AWorkMode = wmWrite) AND (uploaded = TRUE) then
  begin
     {SOURCE DER BEIM UPLOADEN AUSGEFÜHRT WIRD}
  end;
Das ganze hab ich machen können nachdem ich die Hitze hab vorbeiziehen lassen und wieder einen klaren kühlen Kopf hatte. Eventuell lag es ja wirklich an der Hitze, das ich das alles nicht mehr Richtig bedenken konnte.
Aber auch die Danke geskill, weil du mir wahrscheinlich den richtigen Denkanstoss verpasst hast

Den ersten Tests zufolge ist das Problem damit gelöst.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.588 Beiträge
 
Delphi 12 Athens
 
#4

AW: [GELÖST] IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 07:22
Bitte niemals mit TRUE vergleichen, das kann ins Auge gehen.
if (AWorkMode = wmWrite) AND (uploaded{ = TRUE}) then
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
BlackRaven

Registriert seit: 3. Sep 2004
Ort: Berlin
7 Beiträge
 
FreePascal / Lazarus
 
#5

AW: [GELÖST] IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 14:39
Bitte niemals mit TRUE vergleichen, das kann ins Auge gehen.
if (AWorkMode = wmWrite) AND (uploaded{ = TRUE}) then
wieso sollte das schief gehen? Ich deklarier uploaded ja am start direkt auf FALSE und uploaded ist eine globale variable

Geändert von BlackRaven (21. Aug 2012 um 14:41 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.588 Beiträge
 
Delphi 12 Athens
 
#6

AW: [GELÖST] IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 14:43
http://www.delphipraxis.net/57121-ue...t-boolean.html
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
BlackRaven

Registriert seit: 3. Sep 2004
Ort: Berlin
7 Beiträge
 
FreePascal / Lazarus
 
#7

AW: [GELÖST] IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 14:47
ok, gebe ich dir recht. Danke für den Hinweis
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.588 Beiträge
 
Delphi 12 Athens
 
#8

AW: [GELÖST] IdHTTP POST WorkCount Problem

  Alt 21. Aug 2012, 14:49
No problema
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz