URL

Componenti

Cos'è il Parser URL?

Incolla una URL e lo strumento la spezza nelle parti che ti interessano davvero — protocollo, host, porta, percorso, parametri query, hash. L'output è JSON, così lo copi dritto in una fixture di test, in un log di debug, o ovunque ti servano i componenti in forma strutturata. Il parser segue lo standard URL WHATWG, lo stesso che ogni browser moderno usa internamente.

Perché un parser? Perché leggere una URL lunga con cinque parametri query codificati in percentuale e un fragment hash è una pena. Il browser sa già farlo tramite la URL API, ma non hai una superficie veloce incolla-e-vedi per quello. Questa lo è. I parametri query vengono decodificati anche loro — %20 diventa uno spazio, %5B diventa [, le chiavi ripetute diventano un array — stesso comportamento di URLSearchParams.

Tutto gira nel tuo browser. Niente upload, niente server, niente log. Il parsing delle URL è deterministico — niente IA, niente tirate a indovinare, solo lo stesso algoritmo che RFC 3986 ha definito e la spec WHATWG ha rifinito.

Come usare il Parser URL

Tre passi. Ognuno corrisponde a un pulsante in questa pagina.

1

Incolla una URL o carica l'esempio

Butta una URL nel pannello di sinistra. Clicca Esempio per caricare un caso realistico con codifica percentuale, chiavi query ripetute e fragment hash. URL d'esempio:

https://api.shop.example.com/v1/orders?customer=Ava%20Chen&status=active&total%5Bgte%5D=49.99&page=2#summary

Funziona qualsiasi cosa il costruttore URL accetti — incluso <code>file://</code>, <code>mailto:</code>, schemi custom, host IPv6 e userinfo (<code>user:pass@host</code>).

2

Leggi i componenti

Il pannello di destra mostra la URL parsata come JSON: protocol, host, port, pathname, pathSegments (il percorso spezzato in array), searchParams (coppie chiave-valore decodificate, con array per le chiavi ripetute) e hash. Si aggiorna mentre digiti.

3

Copia o scarica

Clicca Copia per mandare il JSON negli appunti, o Scarica per salvarlo come file .json. Minifica compatta il JSON in una sola riga se ti serve per una riga di log. Usa Pulisci nel pannello di input per ricominciare.

Quando lo userai per davvero

Debug di redirect e URL di analytics

Una URL con dodici parametri query venuta da un redirect di tracking pubblicitario è illeggibile nella barra degli indirizzi. Incollala qui per vedere i parametri uno per riga, decodificati, con il parametro url di destinazione completamente svelato. Si abbina bene allo strip dei tracker nel nostro URL Cleaner (quando uscirà).

Ispezionare URL di webhook e callback OAuth

I callback OAuth e i payload webhook stipano lo stato nella query string. Spezzarla rende ovvio se manca il token state, se il code è stato troncato, o se la redirect_uri è codificata due volte. RFC 6749 richiede questi parametri e l'output li tira fuori tutti in un colpo solo.

Costruire fixture di test

Quando scrivi test contro una URL, di solito la vuoi come oggetto strutturato, non come stringa. Incolla la URL, copia il JSON, mettilo nel tuo file di fixture. Ti risparmia di battere protocol: 'https:' a mano per la quinta volta oggi.

Sanity-check sui ticket di supporto

"Si è rotto quando ho cliccato su questo link" — il link è di 400 caratteri con slash codificati due volte. Il parser ti mostra esattamente quello che il browser vedrebbe, incluso se %252F significa un %2F letterale o un separatore di percorso che è stato codificato due volte passando per un proxy.

Domande frequenti

Funziona con URL relative?

No — il costruttore URL ha bisogno di una URL assoluta (con un protocollo come https:// o file://). Per le URL relative, premetti una base come https://example.com e poi toglila dal risultato. La spec WHATWG descrive la forma a due argomenti (new URL(relative, base)) usata internamente dai browser.

Come gestisce le chiavi query ripetute?

Le chiavi ripetute si fondono in un array. Quindi ?tag=red&tag=blue diventa "tag": ["red", "blue"] nell'output. Combacia con come la maggior parte dei framework server (Express, FastAPI, ASP.NET) parsano le query string.

E la notazione array con parentesi tipo ?items[]=1&items[]=2?

Il parser tratta le parentesi come parte della chiave — quindi vedrai "items[]": ["1", "2"]. È onesto rispetto ai byte sul filo. Se ti serve un decoder specifico di un framework (PHP, Rails, qs.js), fai il post-processing sull'output parsato.

È sicuro incollare credenziali nelle URL (user:pass@host) qui?

Il parsing avviene interamente nel tuo browser — la URL non lascia mai la tua macchina. Detto questo, mettere credenziali in una URL è generalmente sconsigliato (l'RFC 3986 §3.2.1 nota i rischi di sicurezza), e la maggior parte dei browser le toglie silenziosamente. Se ne incolli una, i campi username e password appariranno nell'output.

Gestisce i nomi di dominio internazionalizzati (IDN)?

Il costruttore URL del browser gestisce i domini IDN, ma l'output potrebbe mostrare la forma Punycode (xn--...) invece di quella Unicode. È così che la URL verrebbe davvero spedita sul filo. Se hai bisogno di convertire tra le due, uno strumento dedicato Punycode arriverà presto in questa sezione.

Perché l'output si chiama "Componenti" invece di "JSON"?

È JSON — ma l'inquadratura conta. L'output sono le parti della URL, strutturate. Se tratti la pagina come "convertitore URL → JSON", manchi il punto: il valore sta nella scomposizione, non nel formato.

Altri strumenti URL e JSON

Parsare è un'operazione. Ecco cosa si abbina naturalmente: