[Gelöst] Erstellen einer URL mit mehr als 1024 Zeichen

1. April 2006 18:19

Ich arbeite gerade an einem kleinen (privaten) Projekt, wo ich in Navision (4.0 SP1) eine URL zusammenstelle und dann per Hyperlink aufrufen will.

Soweit funktioniert das schon ganz gut, leider kann es passieren, dass die URL weit mehr als 1024 Zeichen enthält.

Hier habe ich zwei Fragen:
1. Wieviele Zeichen können die gängigen Browser (IE, FF, Opera, ...) in der Adresszeile aufnehmen?
2. Wie kann ich aus Navision eine URL mit mehr als 1024 Zeichen an einen Browser übergeben?

Wenn ich das Problem in den Griff bekommen habe, dann habt ihr hier in Kürze ein geniales Tool im Download-Bereich ;-)
(Was das kann verrate ich aber noch nicht, da braucht ihr gar nicht erst zu fragen.)
Zuletzt geändert von Timo Lässer am 2. April 2006 13:02, insgesamt 1-mal geändert.

1. April 2006 18:42

Zu Punkt 1 kann ich nichts sagen.

Zu Punkt 2:
hast Du schon versucht, zwei Variablen mit je 1024 Zeichen zusammen zu übergeben? So in der Art:

Code:
HYPERLINK(variable1 + variable2);


Du könntest ev. die URL auch in einem ARRAY aufbereiten, und dann die gefüllten Array-Elemente so zusammenhängen.

1. April 2006 19:35

rotsch hat geschrieben:[...]
Du könntest ev. die URL auch in einem ARRAY aufbereiten, und dann die gefüllten Array-Elemente so zusammenhängen.
  1. Die Idee ist gut und ließ sich einwandfrei umsetzen.
  2. Der Hyperlink(URL[1]+URL[2]+...URL[26]); akzeptiert zwar mehr als 1024 Zeichen, berücksichtigt aber nur die ersten 1024 Zeichen.
    Meine URL hat aber jetzt schon 3479 Zeichen und kann noch einiges länger werden.

Die Begrenzung der URL-Variable hab ich ja jetzt schonmal mit rotsch's Trick ausgehebelt.
Jetzt müsste ich eine Alternative zum Hyperlink(URL[1]+URL[2]+...URL[26]); finden.

2. April 2006 00:39

Timo Lässer hat geschrieben:Jetzt müsste ich eine Alternative zum Hyperlink(URL[1]+URL[2]+...URL[26]); finden.

Ich schieße jetzt einfach mal ins blaue:
Du könntest den Text per Textstream in ein File mit Endung URL schicken.
Der Inhalt müsste so aussehen:
Code:
[InternetShortcut]
URL=http://www.DeineURL.com/pfad/datei?parameter1=test1&parameter2=usw.

diese Datei kannst du dann über die Shortcutfunktion starten, wie z.B. ein Worddokument.

2. April 2006 12:28

Der Schuß in's Blaue war ein Treffer in's Schwarze!
Leider musste ich feststellen, dass von den 3480 Zeichen nur 2081 Zeichen berücksichtigt wurden. Navision ist hier unschuldig, ich tippe eher darauf, dass der IE oder das Portal nicht mehr Zeichen akzeptiert.
Das Portal erlaubt zwar, dass jeder Parameter bis zu 25mal (param0=...&param1=...&param24=...) angegeben werden darf, aber das sagt ja nix über die maximale Gesamtlänge aus.

2. April 2006 12:46

Timo Lässer hat geschrieben:Leider musste ich feststellen, dass von den 3480 Zeichen nur 2081 Zeichen berücksichtigt wurden. Navision ist hier unschuldig, ich tippe eher darauf, dass der IE oder das Portal nicht mehr Zeichen akzeptiert.


Es scheint so, dass die Länge der URL im IE begrenzt ist.
Ich habe eine Diskussion im SELFHTML-Forum gefunden, die genau davon handelt. Da schreibt jemand, dass die URL auf 2048 begrenzt ist.

SELFHTML - Diskussion über lange URL

2. April 2006 13:01

Danke Roger! Das ist ja mal eine sehr interessante Information, welche meine Vermutung, dass der IE schuld ist, bestätigt.
Laut RFC darf der String somit beliebig lang sein. Netscape scheint hier sogar 4096 Zeichen zu akzeptieren, aber die meisten verwenden immer noch den IE.
Fazit: Meine Programmierung ist unschuldig und ich kann mich anderen Features dieses Tools widmen.

Einen großen Dank an Roger und Schumi für die Tipps und Infos.

2. April 2006 22:44

Du kannst mir die URL-Datei ja mal zumailen, dann kann ich sehen, wieviel Opera akzeptiert und Netscape 7 könnte ich auch testen. ;-)