Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 10554|Atsakyti: 0

[JavaScript] JS koduoja ir dekoduoja URL (trys būdai juos atskirti)

[Kopijuoti nuorodą]
Paskelbta 2019-01-23 15:06:04 | | |
Tik 0-9[a-z] $ - _ . + ! * ' ( ), o tam tikri rezervuoti žodžiai gali būti naudojami tiesiogiai URL adresuose be kodavimo.

Pavyzdžiui, jei ieškote kinų kalbos raktažodžio, nukopijuokite URL ir įklijuokite jį, kad pamatytumėte, kad URL buvo perkoduotas.

1. Pabėgimas ir nepabėgimas

Principas: Padalinkite ASCII raides, skaičius, skyrybos ženklus @ * _ + - .  /

Kodas: escape('http://www.baidu.com?name=zhang@xiao@jie&order=1')

Rezultatas: "http%3A//www.baidu.com%3Fname%3Dzhang@xiao@jie%26order%3D1"

pabėgti('Zhang')

Rezultatas: "%u5F20"

decoded: unescape("http%3A//www.baidu.com%3Fname%3Dzhang@xiao@jie%26order%3D1")

Rezultatas: "http://www.baidu.com?name=zhang@xiao@jie&order=1"

unescape("%u5F20")

Rezultatas: "Zhang"

2. encodeURI ir decodeURI

Principas: pateikia eilutę, užkoduotą kaip galiojantį vienodą išteklių identifikatorių (URI), simbolį, kuris nėra užkoduotas:! @ # $ & * ( ) = : / ; ? + '

   encodeURI() yra "Javascript" funkcija, kuri iš tikrųjų naudojama URL kodavimui.

Kodavimas: encodeURI('http://www.baidu.com?name=zhang@xiao@jie&order=1')

Rezultatas: "http://www.baidu.com?name=zhang@xiao@jie&order=1"

dekodavimas: decodeURI("http%3A//www.baidu.com%3Fname%3Dzhang@xiao@jie%26order%3D1")

Rezultatas: "http%3A//www.baidu.com%3Fname%3Dzhang@xiao@jie%26order%3D1"

3. koduotiURIComponentas ir dekodavimasURIComponentas

Principas: koduokite URL komponentus atskirai, o ne visą URL

Kodavimas: encodeURIComponent('http://www.baidu.com?name=zhang@xiao@jie&order=1')
Rezultatas: "http%3A%2F%2Fwww.baidu.com%3Fname%3Dzhang%40xiao%40jie%26order%3D1"

dekodavimas: decodeURIComponent("http%3A%2F%2Fwww.baidu.com%3Fname%3Dzhang%40xiao%40jie%26order%3D1")

"http://www.baidu.com?name=zhang@xiao@jie&order=1"




Ankstesnis:Paleidus dotnet xx.dll prompts dotnet komanda nerasta
Kitą:Microsoft.NETCore.App problemos versija
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com