URL manipuliert beim Kopieren
Henry
- browser
- html
- https
Hallo,
wie kommt es, dass die kopierte URL anders aussieht? Dachte zuerst vielleicht ein Script beim Kopieren aber ist auch beim Inhaltsverzeichnis so, wenn ich den Link kopiere. Klar gehts nur um Zeichencodierung aber dennoch möchte ich doch kopieren können was ich sehe.
Also gehe ich mal davon aus der Browser macht das unverschämterweise selbst?
Original:
Das wird daraus:
https://de.wikipedia.org/wiki/Giant_Gonz%C3%A1lez#Gr%C3%B6%C3%9Fe
Gruss
Henry
Hallo Henry,
wie kommt es, dass die kopierte URL anders aussieht? Dachte zuerst vielleicht ein Script beim Kopieren aber ist auch beim Inhaltsverzeichnis so, wenn ich den Link kopiere. Klar gehts nur um Zeichencodierung aber dennoch möchte ich doch kopieren können was ich sehe.
bis hierher hate ich noch nicht verstanden, was du meinst. Nur gut, dass du ein Beispiel gibst.
Original:
Das wird daraus:
https://de.wikipedia.org/wiki/Giant_Gonz%C3%A1lez#Gr%C3%B6%C3%9Fe
Es ist genau umgekehrt: Das was du da beim Kopieren bekommst, ist die korrekte, echte URL. Das muss so sein, weil nicht-ASCII-Zeichen im Local Part in URLs nicht erlaubt sind; will man sie doch verwenden, muss man sie URL-codieren (Percent Encoding im Local-Part) oder mit Punycode codieren (im Hostnamen).
Es ist nur ein freundliches Entgegenkommen des Browsers, solche URLs in der Adresszeile aufzuhübschen.
Live long and pros healthy,
Martin
Hallo Der,
Es ist genau umgekehrt: Das was du da beim Kopieren bekommst, ist die korrekte, echte URL.
Aha...hmmm
Das muss so sein, weil nicht-ASCII-Zeichen im Local Part nicht erlaubt sind; will man sie doch verwenden, muss man sie URL-codieren (Percent Encoding).
Darf nicht? Oder darf nicht offiziell? Weil wenn ich dir Url abtippe. erhalte ich:
https://de.wikipedia.org/wiki/Giant González#Größe
und auch dieser Link in der Form funktioniert. (Habe ihn jetzt extra nicht verlinkt)
Es ist nur ein freundliches Entgegenkommen des Browsers, solche URLs in der Adresszeile aufzuhübschen.
Weiss nicht…
Gruss
Henry
Hi,
Es ist genau umgekehrt: Das was du da beim Kopieren bekommst, ist die korrekte, echte URL.
Aha...hmmm
Das muss so sein, weil nicht-ASCII-Zeichen im Local Part nicht erlaubt sind; will man sie doch verwenden, muss man sie URL-codieren (Percent Encoding).
Darf nicht? Oder darf nicht offiziell?
was ist der Unterschied? Ich habe die Spezifikation im Moment nicht griffbereit, aber sie erlaubt in URLs nur ASCII-Zeichen. Soweit ich weiß, sogar nur eine Untermenge davon - z.B. sind die ganzen Steuerzeichen sowie das Leerzeichen ausgeschlossen, ebenso der Slash (0x2F), das Fragezeichen (0x3F) und das Prozentzeichen (0x26), weil die in URLs eine Sonderbedeutung haben.
Weil wenn ich dir Url abtippe. erhalte ich:
https://de.wikipedia.org/wiki/Giant González#Größe
und auch dieser Link in der Form funktioniert.
Natürlich "funktioniert" der. Jedenfalls wenn du ihn in die Adresszeile eingibst. Dort machen die meisten heutigen Browser automatisch eine korrekte Hin- und Hercodierung zwischen "technisch korrekt" und "ordentlich lesbar".
Wenn du aber in einem Link, also einem a-Element mit href-Attribut, Umlaute uncodiert reinschreibst, ist der Erfolg fraglich.
Es ist nur ein freundliches Entgegenkommen des Browsers, solche URLs in der Adresszeile aufzuhübschen.
Weiss nicht…
Believe me. 😀
An der Schnittstelle zum Nutzer ist es durchaus üblich, von der internen, technisch korrekten in die im Alltag übliche Darstellung umzuwandeln und umgekehrt.
Live long and pros healthy,
Martin
Hallo Der,
Wenn du aber in einem Link, also einem a-Element mit href-Attribut, Umlaute uncodiert reinschreibst, ist der Erfolg fraglich.
doch auch dann geht das. Aber wirst schon soweit recht haben mit der Browsereinmischung.
An der Schnittstelle zum Nutzer ist es durchaus üblich, von der internen, technisch korrekten in die im Alltag übliche Darstellung umzuwandeln und umgekehrt.
Mag sein, trotzdem finde ich Text der in einem Eingabefeld ist und dann nicht 1:1 kopierbar ist (also du kriegst was du nicht siehst), na ja grenzwertig. Aber schon mal, danke für deine Ausführungen.
Gruss
Henry
@@Henry
https://de.wikipedia.org/wiki/Giant González#Größe
und auch dieser Link in der Form funktioniert.
Ja. Das ist aber kein URI, sondern ein IRI.
Die englische Wikipedia ist etwas gesprächiger; ansonsten ist ja auch der relevante RFC verlinkt.
😷 LLAP
@@Gunnar Bittersmann
Ja. Das ist aber kein URI, sondern ein IRI.
Auch das SELFHTML-Wiki hat eine Seite dazu, die ich aber für grob fehlerhaft halte.
http://%D1%81%D0%B0%D0%BC%D0%BE%D1%8F%D0%B3%D1%80.%D1%80%D1%84
funktioniert zwar in Browsern, ist aber die falsche Form des Escapens. Beim Domainnamen ist nicht Prozent-Encoding angesagt, sondern Punycode: https://www.xn--80ag0ailb5h.xn--p1ai/
. Kontextwechsel beachten!
Und auch die für Beispiele reservierten Domainnamen. Für russische IDNs gibts .испытание
.
😷 LLAP
Hallo Gunnar,
grob falsch ist wohl was anderes. Eine IRI prozentcodiert darzustellen ist sicherlich icht falsch, und RFC3987 lehnt das auch nicht ab, wenn ich das beim Überfliegen richtig sehe.
Wenn ich das richtig verstehe, dient Punycode dem Zweck, die Kommunikation mit DNS Servern zu ermöglichen, die auf die klassische Domain-Notation mit a-z, 0-9 und Minus limitiert sind.
In RFC3987, Abschnitt 3.1, steht sogar klar drin:
For example,
the IRI
"http://résumé.example.org"
may be converted to
"http://xn--rsum-bpad.example.org"
instead of
"http://r%C3%A9sum%C3%A9.example.org".
Beachte das Wort may. Da steht gerade nicht must.
Dennoch hast Du natürlich recht, dass man Punycode an dieser Stelle erwähnen sollte. Du darfst das gerne tun.
Rolf