AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TRestClient mit Indy oder WinHTTP?
Thema durchsuchen
Ansicht
Themen-Optionen

TRestClient mit Indy oder WinHTTP?

Offene Frage von "Daniel"
Ein Thema von cytrinox · begonnen am 6. Nov 2015 · letzter Beitrag vom 10. Nov 2015
Antwort Antwort
cytrinox

Registriert seit: 4. Sep 2006
88 Beiträge
 
#1

TRestClient mit Indy oder WinHTTP?

  Alt 6. Nov 2015, 17:24
Hi,

die "neuen" Klassen, unter anderem TRestClient wären ideal für mich, da ich viele JSON/REST Quellen abfragen muss. Prinzipiell klappt das auch alles soweit, aber unter WinXP, das ich noch ca. 2 Jahre mit supporten muss, kann ich mit TRestClient keine HTTPS-Verbindungen aufbauen.

Schon ein simples Testprojekt, das auf eine beliebige https URL geht (z.B. https://google.com) lässt die Anwendung einfach einfrieren, sobald man Request.Execute() aufruft.

Meine erste Vermutung war, dass die OpenSSL DLL Dateien fehlen, weil sowas ja meist auf Indy aufbaut und die ohne DLLs kein SSL/HTTPS können.

Jetzt ist mir aber aufgefallen, dass die OpenSSL DLL Dateien selbst unter Windows 7 garnicht geladen werden (obwohl hier der REST Request funktioniert). Also hab ich mir die Implementierung in REST.HttpClient angeschaut, und siehe da: da wird kein Indy benutzt - geht alles über WinHTTP.
Hab in der Hilfe und im Online-Wiki nachgesehen, da wird aber behauptet dass Indy benutzt wird und man unbedingt die OpenSSL Libs braucht.

Daher: Ist bekannt, dass die Doku hier schlicht falsch ist? Kann man das irgendwo konfigurieren, ob Indy oder WinHTTP genutzt wird? Oder überseh ich hier weas ganz offensichtliches?
Problematisch ist, dass ich das nur unter XP nachvollziehen kann. Und hier bis dato es nicht geschafft habe, den Remote-Debugger anzuwerfen. Sobald ich mich von Delphi XE8 verbinden will, friert die IDE einfach ein.
Ich vermute, dass in dem WinHTTP Wrapper von XE8 irgendwas schief läuft sobald man HTTPS auf WinXP nutzen will.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: TRestClient mit Indy oder WinHTTP?

  Alt 6. Nov 2015, 17:57
Also neulich hatte ich nochmal eine WinXP-Kiste in der Hand und konnte fast überhaupt keine HTTPS-Seite mehr ansurfen. Kenne mich damit nicht mehr aus, habe nur noch die ganzen Schreckensmeldungen ("Poodle" usw.) im Kopf, wahrscheinlich haben die Server mittlerweile die uralten Transportsicherungen abgeschaltet und XP kann nur das. Keine Ahnung
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: TRestClient mit Indy oder WinHTTP?

  Alt 6. Nov 2015, 18:06
Also Seattle unterstützt kein Windows XP mehr ... und XE8 auch schon nicht ... (irgendwo war Schluss mit der XP Unterstützung).

Wenn also zufälligerweise eine Anwendung doch unter XP funktioniert, dann einfach nur freuen ... erwarten darf man das nicht.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
485 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: TRestClient mit Indy oder WinHTTP?

  Alt 9. Nov 2015, 08:01
Soweit ich weiß, benötigt Indy 10 keine Open-SSL-Libs mehr. Auf Indy 9 traf das noch zu, aber wer benutzt heutzutage noch Indy 9 ...?
Zu der Sache mit Windows XP: Seitdem Microsoft auch offiziell den Support durch Sicherheitsupdates vollständig eingestellt hat, ist XP hoffnungslos veraltet und nunmehr auch sehr unsicher (heißt idF. noch unsicherer als die neueren Versionen).
Auch werden moderne Features und WinControls nicht mehr unterstützt und führen zu Fehlern.
Bis auf diie ganzen Staatlichen Behörden und die meisten Geldautomaten verwendet aber kein Mensch in Deutschland mehr Windows XP freiwillig, dürfte also problemlos vernachlässigbar sein.
Und wer's doch benutzt, der wird sich mit ganz anderen Dingen herumschlagen dürfen.
Dennis
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#5

AW: TRestClient mit Indy oder WinHTTP?

  Alt 9. Nov 2015, 08:19
Alternativ kannst du eine andere Bibliothek für REST verwenden. Da kann man zum Teil dann auch wählen, mit welcher HTTP Komponente die Verbindung aufgebaut werden soll.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.273 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: TRestClient mit Indy oder WinHTTP?

  Alt 9. Nov 2015, 19:31
Hallo,

Bis auf die ganzen Staatlichen Behörden und die meisten Geldautomaten verwendet aber kein Mensch in Deutschland mehr Windows XP freiwillig

Wie kommst du denn auf die Idee?
Der Umstieg ist für viele Nutzer einfach nicht machbar, weil sie keine Ahnung davon haben.
Und wenn der Rechner kein Internet hat, gibt es auch keine "Unsicherheit".
Erst wenn der alte Rechner kaputt geht, gibt es einen neuen mit einem neuen Betriebssystem.

Das sind nicht meine Worte, sondern die von Kunden.


Heiko
Heiko

Geändert von hoika ( 9. Nov 2015 um 19:37 Uhr)
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: TRestClient mit Indy oder WinHTTP?

  Alt 10. Nov 2015, 06:50
Zur Frage:
Bis XE8 werkelten die INDY-Komponenten innerhalb der REST-Library. Die Architektur wurde jedoch zu Beginn bewusst so gewählt, dass man die Implementierung tauschen kann, was jetzt mit Seattle passiert ist.
Daniel R. Wolf
mit Grüßen aus Hamburg
  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 00:23 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