-
Path Parameter im IWS darf keinen Slash "/" enthalten
Hallo zusammen,
wir haben einen Webservice mittels des IWS implementiert. Der Endpunkt hat im Prinzip die Form
.../schadendaten/{versicherungsnummer}
Die Versicherungsnummer kann eine beliebige Zeichenkette sein.
Das klappte bisher alles wunderbar. Jetzt hat jemand eine Versicherungsnummer übergeben, die einen Slash (/) enthält. Z.B. "01/4711".
Diesen Aufruf leitet der IWS nicht weiter. Ist ja auch klar, weil der IWS glaubt, es wäre ein verkehrter Pfad. Deshalb haben wir den Slash escaped (mit %F2). also als Aufruf:
.../schadendaten/01%F24711
Das wird aber auch nicht bis zu unserem Programm durchgeleitet.
Hat jemand eine Idee, wie man dem IWS beibringt, so etwas durchzulassen?
LG,
Dieter
-
Gar nicht. Der "/" ist im Namen grundsätzlich nicht erlaubt und sollte mit einem Ersatzzeichen, z.B. "_" ersetzt werden. Auch in Windows/Linux wirst du sowas nicht hinbekomment.
"/" und "" sind inzwischne gleichwertig, sogar bei Windows.
Statt %F2 kannst du auch xF2 verwenden.
-
Vielen Dank für die Info. Ich gehe mal davon aus, dass das dann nur für Path Parameter gilt?
Es gibt ja diese standardisierten Escape Sequenzen für bestimmte Zeichen. Die würden ja keinen Sinn machen, wenn man sie trotzdem nicht verwenden kann. Ich werde das bei uns dann wohl auf Query Parameter umbauen und hoffen, dass der slash dann kein Problem mehr darstellt.
-
Probier mal mit ...%2F...
-
Zitat von Pikachu
Probier mal mit ...%2F...
Wenigstens einer, der aufpasst ...
Du hast recht, es ist natürlich %2F. Das ist auch der Wert, mit dem ich es probiert habe. Ich habe es nur hier im Forum falsch geschrieben.
-
Oder probier mal mit ...%61...
-
%61 wird als "a" durchgereicht. Grundsätzlich klappt das mit den Escape Characters. Nur der Slash macht Probleme.
Ich werde das auf Query Parameter umstellen.
-
Letztlich wird dadurch aber trotzdem wieder ein verbotener "/" für Pfadangaben, da dieser nicht "escaped" werden kann.
Nicht zu verwecheln mit URL-Parametern bei einem Web-Aufruf. Da kann man alles mit %xx übergeben um eben Sonderzeichen wie ?, =, % usw. im Query-Parameter zu ermöglichen. Dieise Zeichen werden erst nach der Analyse eines Query zurück gewandelt.
-
So, ich kann jetzt Erfolg vermelden.
Ich habe einen weiteren Endpunkt eingebaut, der die bisherigen Path-Parametern als Query-Parameter empfängt. Jetzt klappt das ganze wunderbar einschließlich eines (per %2F escapten) Slash.
Vielen Dank für eure Antworten!
LG, DIeter
-
Vielleicht geht noch ...%252F... oder ...%2561... im Pfad?
-
Zitat von Pikachu
Vielleicht geht noch ...%252F... oder ...%2561... im Pfad?
Das sieht gar nicht so schlecht aus: Wenn ich %252F übergebe, geht kommt die Zeichenkette %2F in meinem RPG-Programm an. Das müsste dann noch unescaped werden.
Wenn ich das richtig verstehe, escapest du damit das Prozentzeichen.
Es ist etwas merkwürdig, dass die Java-Anwendung, die meinen Webservice nutzt, nicht diese Art des Escapings benutzt. Die Java Kollegen werden ja normalerweise irgendwelche Standard-Escapes benutzten.
Vielen Dank für deine Lösung!
Ich habe mein Programm allerdings schon auf Query-Parameter umgebaut.
Aber ich behalte es mal im Hinterkopf für das nächste Mal.
LG, Dieter
-
Zitat von dschroeder
Es ist etwas merkwürdig, dass die Java-Anwendung, die meinen Webservice nutzt, nicht diese Art des Escapings benutzt. Die Java Kollegen werden ja normalerweise irgendwelche Standard-Escapes benutzten.
Das ist eben kein Standard-Escape. Standard würde bedeuten, dass du sowohl Cleint- als auch Server-Seitig nichts machen musst, da dass die Framworks automatisch übersetzen.
Die beschriebene Lösung ist am Ende nichts anderes als das was Baldur zuvor geschrieben hat, dass du ein Ersatzzeichen verwendest, dass du dann am Server ja wieder manuell zurück wandeln musst.
Es ist halt so, dass ein / nicht als Wert in der URL übergeben werden darf. Hierfür würde ich ebenfalls den Weg über den Query-Parameter oder POST gehen.
Similar Threads
-
By CHGVAR in forum NEWSboard Programmierung
Antworten: 10
Letzter Beitrag: 14-06-17, 16:15
-
By ExAzubi in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 13-08-15, 08:46
-
By hartmuth in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 02-05-14, 08:42
-
By ThiloSiemon in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 24-09-03, 08:51
-
By Gattringer in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 30-11-01, 09:55
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks