HttpClient() Angaben ändern nachträglich

Vom Front-End bis SOAP.

Moderator: Moderatoren

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

teils teils.
Ich will gar nichts unbedingt recyclen, oder neu machen, oder was auch immer. Ich möchte nur zwischendurch die AbfrageURL ändern um weitere Inhalte im gleichen System abzufragen, mehr nicht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14662
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Jan »

Hallo Manfred,

also doch recyceln. Andere URL im gleichen Objekt.

Aber wie gesagt - wo ist der Unterschied ein neues HttpClient-Objekt oder ein neues HttpRequestmessage-Objekt zu bauen? Klar, HttpClient benötigt mehr Methoden zur kompletten Konfiguration. Dafür mußt Du mit dem HttpRequestMessage etwas mehr Aufwand treiben das einzubinden und abzufragen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

Hi Jan,
deshalb ja meine Frage hier, was besser wäre. Ich kann nur das hier anführen. Meine Frage an Alaska:
ich habe eine Instanz vom HttpClient(). Bei der Neuanlage wird ja die URL angegeben. Kann man diese URL zwischendurch ändern, oder muß man jedesmal eine weitere neue Instanz bilden mit der entsprechenden URL und dann damit arbeiten? Ich habe in der Anleitung nichts dazu gefunden.
Und die Antwort darauf:
Du kannst für jeden Request eigens eine HttpRequestMessage():new( cUrl ) Instanz erzeugen und diese dem HttpClient():send( oHttpRequestMessage ) übergeben. Du bekommst dann von :send() ein HttpResponseMessage geliefert wo du mit :getContent() den Body der HTTP response entnehmen kannst.
Was fange ich damit an?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14662
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Jan »

Damit kannst Du anfangen zu überlegen, ob Du für jeden Request ein eigenes neues HttpClient-Objekt haben möchtest. Oder nur eines, und das mit jedem Request mit einem neuen HttpRequestMessage-Objekt füllst. Deine Entscheidung.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

ich habe es jetzt so gemacht, das ich das Objekt NILLE und dann einfach neu baue, mit neuen Werten. Mal sehen was passiert, wenn ich das 1000x durchziehe.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9390
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 104 Mal
Danksagung erhalten: 363 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Tom »

Wenn Du das sehr häufig durchziehst, wird es wahrscheinlich ressourcenschonender und schneller werden, wenn Du mit HttpRequestMessage arbeitest.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

Prima, jeztzt sind wir da, wo ich hin wollte und was ich auch zwischendurch gefragt hatte. Was passiert, wenn das x-mal gemacht werden muß. Deshalb meine Bedenken, wenn immer wieder genillt und neu erstellt wird.. Aber auf mich hört ja keiner. :angry4:
Und jetzt die 2.Sache, das mit HttpRequestMessage klappt beir mir nicht. Irgendwas mache ich da wohl falsch. Habe ich aber auch schon mehrmals erwähnt. #-o
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14662
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Jan »

Manfred,

nun ja, so ist das ja nicht. Ich habe glaub ich 2x geschrieben das ich viele Abfragen mache, und grundsätzlich immer destroye und NILe. Ohne jedes Problem.

Meine wildeste Geschichte waren mal ca. 400.000 Requests an einen Stück. Hat zwar ein paar Stunden gedauert weil der Server nicht ganz hinterher kam. Hat aber sauber geklappt. Aber so um die 1.000 Requests am Stück mach ich öfters.

Und wie ich oben schrieb: Macht es denn einen Unterschied ob ich 1.000 HtttpClient destroye und NILe, oder 1.000 HttpRequestMessage. Irgend was muß ich 1.000x machen. Da geht wohl nur ausprobieren.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

ok, bei den Stückzahlen von Dir ermutigt mich das dann es so weiter zu machen. Mal sehen, wie es sich entwickelt
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21220
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Manfred »

man könnte die ganzen Befehle ja auch per cUrl angeben. Da steht dann alles in einem String. Gibt es eigentlich die Möglichkeit sich das was httpclient() wegschickt auch also kompletten String irgendwie anzuschauen? Ich möchte das gerne mal vergleichen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2944
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Wolfgang Ciriack »

Bei XbHTTPClient geht das mit oHttp:LogResponse := .T., erzeugt dann eine request.txt und eine response.txt.
Bei Alaskas HTTPClient weiß ich das nicht.
Viele Grüße
Wolfgang
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14662
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: HttpClient() Angaben ändern nachträglich

Beitrag von Jan »

Manfred,

wenn Du Dir das mal im ObjectInspector anschaust dann findest Du da eine Menge zusätzlicher Infos. Es gibt z. B. ein

Code: Alles auswählen

cUrlImObjekt    := ohc:httprequest:_crackedurl:extrainfo
Leider funktioniert z. B. genau diese Abfrage das nur in der Workbench im Befehlsfenster - packst Du das in den Code und lässt das laufen gibt es einen Laufzeitfehler, das die Methode unbekannt sei. Bei anderen klappt das aber.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten