Einzelnen Beitrag anzeigen

Benutzerbild von jakewalk
jakewalk

Registriert seit: 13. Dez 2005
4 Beiträge
 
#1

Problem mit Sonderzeichen bei HTTP Post [ICS]

  Alt 13. Dez 2005, 12:30
Hi,

ich habe ein Problem mit HTTP Posts, die ich über die ICS erstelle. Das Problem ist aber unabhängig von der Komponente, da es auch bei der Eingabe über den Browser auftritt.

Wenn ein Parameter eckige Klammern enthält, versteht offensichtlich der Server meine Anfrage nicht. Dieser Code funktioniert beispielsweise nicht.

Code:
http://persoenlicherfahrplan.bahn.de/bin/pf/query-p2w.exe/dn?protocol=http&seqnr=0&ignore_ident=1&pfmodus=1&transfertype=xml&from=Hemsbach%20%5BDB%5D&to=Heidelberg%2C%20Hbf&date_from=13.12.05&date_to=09.12.06&weekday_mo=checked&weekday_tu=checked&weekday_we=checked&weekday_th=checked&weekday_fr=checked&weekday_sa=checked&weekday_su=checked&timesel=depart&time=12:00&time0_from_hin=0:00&time0_to_hin=23:59&time0_from_rueck=0:00&time0_to_rueck=23:59&answerMode=download&output=pdf&maxNrOfChanges=1000&pr1.1=CHECKED&pr1.2=CHECKED&pr1.3=CHECKED&pr1.4=CHECKED&pr1.5=CHECKED&pr1.6=CHECKED&pr1.7=CHECKED&pr1.8=CHECKED&pr1.9=CHECKED&pr1.10=CHECKED&outputFilter=complete&filter=&start=
Dieser aber schon:

Code:
http://persoenlicherfahrplan.bahn.de/bin/pf/query-p2w.exe/dn?protocol=http&seqnr=0&ignore_ident=1&pfmodus=1&transfertype=xml&from=Hemsbach%20Mitte&to=Heidelberg%2C%20Hbf&date_from=13.12.05&date_to=09.12.06&weekday_mo=checked&weekday_tu=checked&weekday_we=checked&weekday_th=checked&weekday_fr=checked&weekday_sa=checked&weekday_su=checked&timesel=depart&time=12:00&time0_from_hin=0:00&time0_to_hin=23:59&time0_from_rueck=0:00&time0_to_rueck=23:59&answerMode=download&output=pdf&maxNrOfChanges=1000&pr1.1=CHECKED&pr1.2=CHECKED&pr1.3=CHECKED&pr1.4=CHECKED&pr1.5=CHECKED&pr1.6=CHECKED&pr1.7=CHECKED&pr1.8=CHECKED&pr1.9=CHECKED&pr1.10=CHECKED&outputFilter=complete&filter=&start=
Der Unterschied liegt im Parameter from, der im ersten Fall Hemsbach%20%5BDB%5D im zweiten Fall Hemsbach%20Mitte lautet; beides sind gültige Bahnhöfe der DB.

Ich verwende die Funktion URLEncode aus der httpprot.pas zum Kodieren der Sonderzeichen.

Das Problem tritt lediglich bei den Klammern auf, Leerzeichen werden kodiert akzeptiert. Wie komme ich dem Problem auf die Schliche?

Der komplette Quelltext kann hier heruntergeladen werden, allerdings tritt das Problem ja auch im Browser auf.

jakewalk
  Mit Zitat antworten Zitat