Utilia

URL parser

Nalepi URL da vidiš protokol, host, port, segmente putanje, dekodirane parametre upita i fragment, pa izmeni parametre i ponovo sastavi adresu.

Kako se analizira URL

  1. Nalepi URL u URL za analizu. Analiza se vrši dok kucaš; možeš i da pritisneš Enter ili klikneš Analiziraj URL.
  2. Pročitaj delove: Protokol, Ime hosta, Port, Host (sa portom), Poreklo (origin), Korisničko ime, Lozinka, Putanja i Fragment (#).
  3. Pogledaj listu Segmenti putanje i tabelu Parametri upita, koja prikazuje svaki ključ i vrednost dekodirane, pored teksta Izvorno.
  4. Pod Izmeni i ponovo sastavi promeni ključ ili vrednost, klikni Dodaj parametar ili Ukloni, ili izmeni fragment. Ponovo sastavljen URL se ažurira dok kucaš.
  5. Klikni Kopiraj da kopiraš novi URL.

Ako nalepiš adresu bez šeme, kao example.com/page, alat pretpostavlja https:// i to kaže.

Delovi URL-a

Alat koristi ugrađeni URL parser pregledača, koji prati WHATWG URL standard, pa vidi adresu tačno onako kako je vidi pregledač. Uzmimo https://ann:secret@shop.example.com:8080/en/products?size=M#reviews:

  • Protokol (https:) je šema koja pregledaču kaže kako da preuzme resurs.
  • Korisničko ime i Lozinka (ann, secret) su opcioni podaci za prijavu. Lozinka je podrazumevano maskirana; označi Prikaži lozinku da je vidiš. Pregledači danas uklanjaju ili odbijaju takve podatke u vezama, a nikada ne treba da deliš URL koji ih sadrži.
  • Ime hosta (shop.example.com) je ime servera. Internacionalizovani domeni prikazuju se u punycode obliku (xn--…), koji koristi DNS.
  • Port (8080) se prikazuje kada ga URL navodi. U suprotnom alat beleži podrazumevani port šeme: 80 za http i ws, 443 za https i wss, 21 za ftp. Port jednak podrazumevanom, kao :443 na https, parser izbacuje.
  • Host (sa portom) spaja oba, a Poreklo (origin) je šema + host + port, jedinica koju pregledači koriste za bezbednosna pravila kao što je CORS.
  • Putanja (/en/products) se deli na Segmenti putanje, svaki procentno dekodiran, pa caf%C3%A9 glasi café.
  • Fragment (#) (reviews) upućuje na deo stranice. Nikada se ne šalje serveru.

Parametri upita

Niz upita se deli po &, a svaki par po prvom =. Ključevi i vrednosti dekodiraju se onako kako ih kodiraju HTML obrasci: %XX sekvence postaju znakovi, a + postaje razmak. Ponovljeni ključevi, uobičajeni za filtere i polja sa višestrukim izborom (size=M&size=L), svi se čuvaju i označavaju sa „(ponovljeno 1/2)“, „(ponovljeno 2/2)“ po redu. Ključ bez = prikazuje se sa praznom vrednošću. Kada se sekvenca ne može dekodirati, prikazuje se izvorni tekst.

Izmena i ponovno sastavljanje

Uređivač počinje sa trenutnim parametrima. Prazni redovi se zanemaruju. Novi niz upita se kodira kao slanje obrasca, kao što to radi URLSearchParams: razmaci postaju +, a rezervisani znakovi kao &, = ili # se procentno kodiraju, pa vrednost bezbedno može da ih sadrži. Zgodno je za uklanjanje parametara za praćenje, promenu broja stranice ili pravljenje probnih veza. Kada je lozinka skrivena, maskirana je i u polju Ponovo sastavljen URL, ali Kopiraj kopira pravi URL.

Česta pitanja

Zašto alat kaže da moj URL nije ispravan?

Najčešći uzroci su razmaci u hostu, port veći od 65535, host koji nedostaje posle https:// ili znakovi koji nisu dozvoljeni u imenu hosta. Tekst bez tačke, kao jedna reč, takođe se ne tretira kao ime hosta.

Da li se URL posećuje ili šalje negde?

Ne. Adresa se samo analizira u tvom pregledaču. Ka sajtu se ne upućuje nikakav zahtev.

Zašto je %20 postao + u ponovo sastavljenom URL-u?

Oba znače razmak u nizu upita. Ponovno sastavljanje koristi kodiranje obrasca koje prave pregledači i većina serverskih okvira, a ono razmake piše kao +.

Da li radi sa mailto:, tel: ili data: URL-ovima?

Da. Oni se takođe analiziraju, ali nemaju host ni port: njihov sadržaj se pojavljuje u Putanja.

Koja je razlika između Host i Ime hosta?

Ime hosta je samo ime. Host (sa portom) dodaje port kada je izričito naveden, kao u example.com:8080.