Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   TIdURI.URLEncode und Plus-Zeichen (https://www.delphipraxis.net/215722-tiduri-urlencode-und-plus-zeichen.html)

Hobbycoder 27. Aug 2024 09:33

TIdURI.URLEncode und Plus-Zeichen
 
Hi,

ich muss per Get-Parameter einige Daten zu einem Server übertragen. In den Parametern können in den Strings das Plus-Zeichen vorhanden sein (darauf habe ich keinen Einfluss).
Wenn ich die URL dann mit TIdURI.URLEncode umwandele werden alle Sonderzeichen brav kodiert, außer dem Plus-Zeichen. Das bleibt unverändert.
Das führt dazu, dass die empfangende PHP-Seite das Plus komplette rausnimmt und stattdessen Leerzweichen anspeichert. Leider stehen dann in der Datenbank der Webseite falsche Daten.

Weiß jemand wie ich Indy dazu kriege auch die Plus-Zeichen zu kodieren?

Bernhard Geyer 27. Aug 2024 10:44

AW: TIdURI.URLEncode und Plus-Zeichen
 
Hat dein Delphi schon TNetEncoding.URL.Encode?
Probier mal das

Hobbycoder 27. Aug 2024 11:34

AW: TIdURI.URLEncode und Plus-Zeichen
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1540266)
Hat dein Delphi schon TNetEncoding.URL.Encode?
Probier mal das

Nein, ist noch ein altes D7-Projekt.
Ich hab jetzt die IdURI geändert und einfach in der Methode ParamsEncode die Konstante UnsafeChars umd das '+' erweitert.
Jetzt funktioniert's.
Danke trotzdem.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:17 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