Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 12798|Odpověď: 2

[JavaScript] Kódování URL a parametrů v JavaScriptu

[Kopírovat odkaz]
Zveřejněno 16.04.2022 18:50:39 | | | |
Kódování URL

Některé znaky se v URL (např. mezerách) nevyskytují, jiné mají v URL speciální významy. Musíme převést speciální znaky tak, aby odpovídaly syntaxi definované ve specifikaci W3 URI (RFC 3986). To znamená, že URL musí obsahovat pouze podmnožinu speciálního ASCII znaku: písmena a čísla, která známe, stejně jako některé rezervované znaky, které se používají jako řídicí znaky v URL.

Zpracování kódování URL v JavaScriptu

V JavaScriptu lze vestavěné funkce encodeURIComponent() a encodeURI() kódovat v URL, přičemž rezervované znaky v URL jsou nahrazeny znaky kódovanými v UTF-8.

Většina prohlížečů automaticky kóduje URL, například kóduje mezery na 20 %, ale vždy existují výjimky. Naštěstí prohlížeče poskytují vestavěné funkce kódování a dekódování adres: encodeURI, encodeURIComponent a decodeURI, decodeURIComponent. Otázkou je, jak tyto funkce používat a jaký je mezi nimi rozdíl.

encodeURI()

Kódování řetězce URL je snadné, stačí zavolat encodeURI a předat řetězec, který chcete zakódovat. Tato funkce vrací zakódovanou URL.

decodeURI()

Tato funkce dekóduje a volá funkci decodeURI, předá zakódovaný řetězec a poté vrátí dekódovaný normální řetězec.



encodeURIComponent()

Funkce encodeURIComponent by měla být použita k zakódování hodnot parametrů dotazovacího řetězce. Rozdíl mezi encodeURI a encodeURIComponent je v tom, že encodeURIComponent kóduje celý řetězec, zatímco encodeURI ignoruje protokolový prefix ('http://') i doménové jméno. encodeURIComponent je navržen tak, aby kódoval vše, zatímco encodeURI ignoruje část doménového jména v URL. Když tyKdyž chcete zakódovat hodnotu parametru v URL, vyberte funkci encodeURIComponent

decodeURIComponent()

Funkce decodeURIComponent dekóduje zakódovaný řetězec funkce encodeURIComponent a obnoví jej do normálního obsahu.



Přezkoumání:

JS kóduje a dekóduje URL (tři způsoby, jak je rozlišit)
https://www.itsvse.com/thread-6844-1-1.html

Kódování a dekódování URL
https://www.itsvse.com/thread-2728-1-1.html

Kódování a dekódování URL v ASP.NET
https://www.itsvse.com/thread-2642-1-1.html






Předchozí:Výběr priority podle časového intervalu SQL Serveru
Další:jQuery hide nefunguje dvě řešení
Zveřejněno 08.02.2023 22:07:55 |
Označte URL požadavku Get speciálním znakem #, automaticky zachytíte obsah po #, což vede k nesprávné URL adrese a nelze ji normálně využít
Zveřejněno 21.12.2023 10:22:07 |
Pobídnout:Autoři jsou zabanováni nebo odstraněný obsah je automaticky blokován
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com