Seite 1 von 1

POST/GET

Verfasst: Fr, 18. Jul 2014 12:43
von Jan
Angeregt durch wiederaufgenommene bzw. neue Diskussionen rund um dieses Thema habe ich eine Frage: Ich habe das Problem, das ich mit einer Webseite kommunizieren muß. Nach einer OAuth2.0-Anmeldung kann ich per POST- oder GET-Strings Daten abfragen, die ich dann per JSON geliefert bekomme.

Zur Zeit mache ich das mit schnarchend langsamen Klassen von Pablo. Auch eine zweite Klasse, die er angefangen hat für mich zu schreiben ist nicht schneller. Es klappt zwar soweit absolut fehlerfrei, aber Kunden kann ich das trotzdem nicht zumuten. Die hätten bei Weitem zu viele Kaffee-Pausen einzulegen ...

Da ich nun in der Doku der 2.0 gelesen habe, das es dort eine LoadFromUrl gibt (ich habe bislang nur die Foundation ohne diese Funktion), und ich ansonsten nur die LoadFromUrl von Phil kenne, die ich ausschließlich zum Dateien-Download in meiner Update-Funktion nutze: Kann man mit der Alaska-LoadFromUrl eine Kommunikation wie oben beschrieben durchführen?

Georg hat zwar hier im Forum das wget angesprochen. Aber ich bin kein Fan davon dem Kunden noch eine exe mehr mitgeben zu müssen. Auch die curllib könnte eventuell gehen, aber auch hier: Wieder eine Datei mehr. Und wenn Xbase++ ohnehin passende Funktionen drin hätte, wäre das vielleicht der elegantere Weg. Ich habe aber viel zu wenig Ahnung von dieser Art der Kommunikation um da auch nur annähernd irgendeine Bewertung zu abgeben zu können.

Jan

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 14:09
von brandelh
Nach meiner Erfahrung ist Phils Klasse so schnell und zuverlässig wie die der AsiNet.
Ich bin mir nicht sicher, dass LoadFromUrl() jetzt zum Standard wurde, aber beide verarbeiten nach meinem Kenntnisstand keine cookies.

Deine Erwähnung von "langsamen Klassen" von Pablo erinnert mich an die direkten TCPIP Befehle von PowerBasic.
Egal was ich dort mache ist mein Programm langsamer als mit LoadFromUrl(), vermutlich weil sie auf TimeOuts warten, während das die Asinet eleganter löst ?

Welche Klassen nutzt du denn genau ?

PS: in der Hilfe steht:
Simply retrieve the html content of the web page [Top]
#pragma Library( "Asinet10.lib" )

PROCEDURE Main()

? LoadFromUrl( "http://www.alaska-software.com" )

RETURN

See also
GetCgiString()

File info
Include file
ASINET.CH
Static library
ASINET10.LIB
Dynamic library
ASINET10.DLL
also vermutlich auch nur mit Prof. Sub.

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 14:25
von Jan
Hallo Hubert,

richtig, das dürfte nur in der Professional drin sein. Da ich die aber demnächst habe(n muß), wäre das kein Problem für mich. Und gesehen habe ich das, weil die CTP immer den Professional-Umfang hatten.

Wenn der Unterschied zwischen wget und curllib einerseits und Alaskas LoadFromUrl andererseits nur in den Cookies liegt, dann bin ich ja schon sehr glücklich. Die brauche ich nämlich nicht.

Und ja, wenn ich mich richtig erinnere (das ist leider schon eine Weile her, seitdem ich das wegen der mangelnden Geschwindigkeit aufgegeben habe) nutzt Pablo direkte Zugriffe. In beiden Klassen.

Jan

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 17:10
von ramses
HAst du mal xb2net angeschaut, da gibt es diese möglichkeit.

Cu Carlo

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 20:22
von Jan
Ich bin gerade etwas irritiert. Ich versuche mal, das mit Phils LoadFromUrl zu testen. Naja, die Klasse will die XbpCre haben. Kann man von Alaska runterladen, soweit so gut. Aber diese Version arbeitet offensichtlich nur mit der Xbase++ 1.8 zusammen. Das ist die schlechte Nachricht.

Wo bekomme ich jetzt eine Version her, die mit 1.9 zusammen arbeitet???

Jan

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 20:39
von georg
Hallo, Jan -


die Sachen von Phil kommen eigentlich mit Source-Code. Den würde ich compilieren, dass sollte passen. Zumindest die XbpCRE setze ich mit der aktuellen 355er Version ein.

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 20:51
von AUGE_OHR
Jan hat geschrieben:Wo bekomme ich jetzt eine Version her, die mit 1.9 zusammen arbeitet???
hier der Source zu XbPCRE
XbPCRE.zip
(2.82 KiB) 365-mal heruntergeladen

Re: POST/GET

Verfasst: Fr, 18. Jul 2014 21:31
von brandelh
Ich meine ich hätte in der Wissensbasis mit einer angepaßten LoadFromURL() den Up-/ download beschrieben.
Ich hatte damals die zusatz LIB entfernt - ich binde übrigens immer den Quellcode ein und keine vordefinierten OBJ / LIB (oder bin zumindest bei der Umstellung ;-) )