Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
URIError: malformed URI sequence
Die JavaScript-Ausnahme "malformed URI sequence" tritt auf, wenn die URI-Kodierung oder -Dekodierungnicht erfolgreich war.
In diesem Artikel
Nachricht
URIError: URI malformed (V8-based)URIError: malformed URI sequence (Firefox)URIError: String contained an illegal UTF-16 sequence. (Safari)
Fehlerart
URIErrorWas ging schief?
Die URI-Kodierung oder -Dekodierung war nicht erfolgreich. Ein Argument, das entweder derdecodeURI,encodeURI,encodeURIComponent oderdecodeURIComponent Funktion übergeben wurde, war nicht gültig, sodass die Funktionnicht in der Lage war, korrekt zu kodieren oder zu dekodieren.
Beispiele
>Kodierung
Die Kodierung ersetzt jede Instanz bestimmter Zeichen durch eine, zwei, drei oder vierEscape-Sequenzen, die die UTF-8-Kodierung des Zeichens darstellen. EinURIError wird ausgelöst, wenn versucht wird, ein Surrogat zu kodieren, das nicht Teil eines Hoch-Niedrig-Paares ist, zum Beispiel:
encodeURI("\uD800");// "URIError: malformed URI sequence"encodeURI("\uDFFF");// "URIError: malformed URI sequence"Ein Hoch-Niedrig-Paar ist in Ordnung. Zum Beispiel:
encodeURI("\uD800\uDFFF");// "%F0%90%8F%BF"Dekodierung
Die Dekodierung ersetzt jede Escape-Sequenz im kodierten URI-Komponenten durch das Zeichen,das sie darstellt. Wenn es ein solches Zeichen nicht gibt, wird ein Fehler ausgelöst:
decodeURIComponent("%E0%A4%A");// "URIError: malformed URI sequence"Mit korrektem Input sollte dies normalerweise so aussehen:
decodeURIComponent("JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B");// "JavaScript_шеллы"