maximale länge einer url? [war: href, replace, open usw.]
-
Hallo,
kann mir jemand erklären, warum ich wenn ich einen String der größer als ca. 2000 Zeichen ist mit z.b. window.location.href übergeben will immer ein javascript fehler passiert: pointer ungültig
gibts da eine begrenzung oder ist das ein bug?
danke!
-
Ich weiß net, ob's da ne Beschränkung gibt, aber 2000 Zeichen für ne URL erscheint mir schon sehr lang.
Ich gehe davon aus, dass das Daten für ein CGI mit Method GET sind, und da gibt es eine Beschränkung, aber ich weiß nicht wie groß die ist.
-
Zeig mal den Quellcode, der vor dem Fehler liegt.
-
Hallo,
also ich erklärs nochmal genauer:
ich bastel mir einen string zusammen, den hab ich mir dann angeschaut und da ist immer alles i.o.: blabla.jsp?=bla,bla,bla usw.
dann will ich den string mit z.b. self.location.href=string verwenden.das geht wenn der string kleiner als ca. 2000 zeichen ist.
das geht nicht wenn der string größer als ca. 2000 zeichen ist: javascript fehlermeldung vom ie6 (pointer ungültig)was ich danach mit dem string machen will (sql abfrage) spielt also keine rolle, weil ich ja bei einem string > 2000 garnicht zur nächsten seite komme und bei < 2000 alles i.o. ist?!
warum ist das so?
-
Also, ich hab mal dannach gesucht, und wie ich schon sagte gibt es ein Limit für die Länge einer URL, also auch für self.location.href. Sie scheint nicht allgemein festgelegt zu sein, und vielleicht ist sie bei IE ungefähr 2000 Zeichen.
As you can see, using METHOD=GET is a straightforward way to send information to your script. However, there are some disadvantages. The first is that there is a fixed length on the string you can send. Although it varies, 256 is a common limit. However, it may be shorter on some systems so don't count on that length.
Nachzulesen unter: http://perl.about.com/library/weekly/aa070901b.htm
-
Kannst du nicht mit POST arbeiten, da gibt es keine Beschränkungen. Wenn du sowieso Javascript verwendest, kannst du doch auch einfach ein unsichtbares Formular mit den Daten füllen und absenden.
-
ja, so habe ich das (provisorisch) inzwischen auch gemacht...
aber in meinem fall wäre es halt ganz toll, wenn ich den string einfach so schicken kann, weil ich den mit (selbst erstellten) tags so toll hätte weiter verarbeiten können.ich werde mir nächste woche mal den server anschauen, vielleicht liegt das ganze ja auch an einer einstellung...
-
Nein, ich denke da kannst du keine Einstellung ändern, denn die Beschränkung wird auch am Browser liegen, und du kannst nicht jedem Benutzer sagen, dass er seinen Browser umbauen muss.
-
CGI-BIN schrieb:
und du kannst nicht jedem Benutzer sagen, dass er seinen Browser umbauen muss.
doch, eigentlich könnte ich das schon
habe gerade gelesen, dass der ie6 eine beschränkung auf 256 zeichen haben soll,
irgendwie frage ich mich da, warum bei mir 2000 zeichen keine probleme machen?
ich finde einfach keine offizielle ms seite mit infos dazu
-
Darum ging es auch neulich im WinAPI-Forum: http://support.microsoft.com/support/kb/articles/Q208/4/27.ASP
-
das ist sehr schade, trotzdem danke!