AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

Ein Thema von Tomski · begonnen am 4. Okt 2012 · letzter Beitrag vom 29. Okt 2012
Antwort Antwort
Tomski

Registriert seit: 17. Jun 2010
19 Beiträge
 
Delphi 2 Desktop
 
#1

Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 4. Okt 2012, 13:43
Hallo Leute,

habe bei der Umstellung meiner Programme von Delphi2007 auf XE noch Probleme mit dem Indy httpclient. Mit Delphi2007 funktionierts einwandfrei nur mit XE klappts nicht. Hier die Problembeschreibung...

Ich übertrage ein XML-File UTF-8 per httpclient als post an ein Script auf einem Server auf dem ich selbst keinen Zugriff habe um zu prüfen was dort ankommt. Das Problem ist das File wird mit Fehlermeldung immer dann abgewiesen wenn sich Umlaute im File befinden. Folgende Erfahrung habe ich bisher gemacht...

1. XML-File (StringList UTF-8 codiert) per Post mit Delphi2007 mit und ohne Umlaute... Kein Problem...
2. XML-File (StringList UTF-8 codiert) per Post mit DelphiXE ohne Umlaute... Kein Problem...
3. XML-File (StringList UTF-8 codiert) per Post mit DelphiXE mit Umlauten... Fehlermeldung > Zeichen (Umlaut) nicht erkannt...

Ich denke der httpclient überträgt in XE mit einer anderen Codierung als UTF-8. Meine Frage wie kann ich am httpclient die Codierung so einstellen das per UTF-8 übertagen wird. Habe mir die httpclientbeschreibungen von geskill angeschaut, habe aber nichts gefunden das mir weiterhilft. Am sinnvollsten schien mir von gskill

ResponseStr := Post('http://www.delphipraxis.net/login.php?do=login', Params, Enc);

Allerdings kann ich den Parameter Enc nicht angeben, da er bei meinen Indyversionen nicht im Post vorgesehen ist. Habe auch nachgeschaut bei Indy nach neueren Versionen, aber die Indyversionen die zum Download stehen sind ältere Versionen die ich bei XE dabei hatte.

Wäre toll wenn mir jemand helfen könnte, dass Problem muß sich doch lösen lassen...

Gruß Thomas


Hab noch was vergessen... Wenn ich das mit XE erzeugte XML-File mit 2007 übertrage gehts einwandfrei. Also scheint die Wahrscheinlichkeit groß das der httpclient in XE nicht in UTF-8 überträgt, dort evtl. eine anderes Default eingestellt ist.

Geändert von Tomski ( 4. Okt 2012 um 13:51 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 4. Okt 2012, 13:46
Aktuelle Indy-Version installiert. Wenn ich mich recht erinnere gabs in dem Bereich UTF8/Unicode bei der mit Delphi gelieferten Version noch einige Bugs.

Download für aktuelle Version:
http://blog.digivendo.com/2009/09/indy-svn-access/
http://indy.fulgan.com/ZIP/
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#3

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 4. Okt 2012, 13:47
Allerdings kann ich den Parameter Enc nicht angeben, da er bei meinen Indyversionen nicht im Post vorgesehen ist. Habe auch nachgeschaut bei Indy nach neueren Versionen, aber die Indyversionen die zum Download stehen sind ältere Versionen die ich bei XE dabei hatte.
Aktuell ist 10.5.9 (nicht mehr 10.5.8), die ab XE3 enthalten ist, und die man auch downloaden kann, z.B. bei http://indy.fulgan.com/ZIP
Michael Justin
  Mit Zitat antworten Zitat
Tomski

Registriert seit: 17. Jun 2010
19 Beiträge
 
Delphi 2 Desktop
 
#4

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 7. Okt 2012, 15:57
Ich habe jetzt versucht die Indy 10.5.9. zu installieren, die läuft aber unter XE nicht. Leider bekomme ich jetzt auch die 'alte' nicht mehr zum laufen... Kann man die 10.5.8. noch irgendwo abladen? Bei Google komme ich nur wieder bei Indy raus und dort finde ich nur die neueste Version.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#5

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 7. Okt 2012, 17:01
Eine Reparaturinstallation des Delphi?
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Tomski

Registriert seit: 17. Jun 2010
19 Beiträge
 
Delphi 2 Desktop
 
#6

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 7. Okt 2012, 17:14
guter Tip könnte ich gleich mal versuchen.
  Mit Zitat antworten Zitat
Tomski

Registriert seit: 17. Jun 2010
19 Beiträge
 
Delphi 2 Desktop
 
#7

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 7. Okt 2012, 18:02
@Himitsu:
Danke Himitsu hat geklappt ohne das ich alle Komponenten neu installieren musste, manchmal steht man auf dem Schlauch was die einfachen Lösungen betrifft.

Also bei mir ist die Version 10.5.7. installiert wie komme ich jetzt noch an die 10.5.8., leider lässt sich die 10.5.9. bei mir unter XE nicht installieren. Evtl. kann ich die 10.5.8. installieren. Danke schon mal im voraus für eure Mühen.
  Mit Zitat antworten Zitat
Tomski

Registriert seit: 17. Jun 2010
19 Beiträge
 
Delphi 2 Desktop
 
#8

AW: Delphi XE Indy httpclient auf UTF-8 Übertragung einstellen

  Alt 29. Okt 2012, 11:48
So hab's jetzt endlich gefunden was getan werden muss, geht auch mit Indy 10.5.7. Der Postbefehl muss sinngemäß so aussehen...

HTTPClient.Post(fScriptUrl,ParaStringList,SysUtils .TEncoding.UTF8);

Hier gibts dann auch Unicode, UTF7, ASCII etc. Ich hoffe es kann noch jemand gebrauchen...

Beste Grüße an Alle
Tomski
  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 07:04 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