Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   idHTTP GET gives runtime error (https://www.delphipraxis.net/172198-idhttp-get-gives-runtime-error.html)

HJay 18. Dez 2012 13:42

idHTTP GET gives runtime error
 
Im Rahmen meiner Bemühungen um OAuth bin ich jetzt ziemlich weit gekommen. Nun scheitert es derzeit leider an dem eigentlich simplen GET-Befehl.

Ich erhalte den runtime error "IOHandler value is not valid." -- woran liegt das?

Der Aufruf ist doch so simpel -- was für einen IOHandler braucht man denn überhaupt?
Code:
procedure TForm1.ButtonAPIcallClick(Sender: TObject);
 var
    AHTTP       : TIdHTTP;
    AResponse   : String;
begin
  AHTTP := TIdHTTP.Create(nil);
  AResponse := AHTTP.Get(MyURL);
  AHTTP.Free;
end;
MyURL ist korrekt; im Browser funktioniert es problemlos. Auch mit diesen Ergänzungen geht es leider nicht:
Code:
  AHTTP.ProtocolVersion     := pv1_1;
  AHTTP.HTTPOptions         := AHTTP.HTTPOptions + [hoKeepOrigProtocol];
  AHTTP.Request.ContentType := 'application/x-www-form-urlencoded; charset=utf-8';
  AHTTP.Request.UserAgent   := 'Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101';

HJay 18. Dez 2012 13:55

AW: idHTTP GET gives runtime error
 
Inzwischen vermute ich, dass es daran liegt, dass die URl mit https:// anfängt und SSL erfordert.

wie weise ich denn einen passenden SSL-IOHandler zu? ich kann darüber nichts klares finden.

Morphie 18. Dez 2012 14:02

AW: idHTTP GET gives runtime error
 
erster Treffer bei Google:
http://www.delphipraxis.net/335275-post9.html

Andreas L. 18. Dez 2012 15:07

AW: idHTTP GET gives runtime error
 
Zitat:

Zitat von HJay (Beitrag 1195907)
Inzwischen vermute ich, dass es daran liegt, dass die URl mit https:// anfängt und SSL erfordert.

wie weise ich denn einen passenden SSL-IOHandler zu? ich kann darüber nichts klares finden.

TIdOpenSSLIOHandler (Name ähnlich) der Eigenschaft IOHandler von IdhTTP zuweisen. Außerdem musst du noch die OpenSSL-DLLs in dein Programmverzeichnis (zur Exe) legen. Download hier: http://slproweb.com/products/Win32OpenSSL.html Das ZIP-File reicht, du brauchst nur die 2 enthaltenen DLLs. Installieren ist nicht notwendig.

HJay 18. Dez 2012 21:29

AW: idHTTP GET gives runtime error
 
@Andreas: Danke für die tolle Antwort. Hat alles geklappt. HTTPS-GET geht jetzt einwandfrei.

Vielen Dank!


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz