Codifica URL
La codifica URL trasforma spazi, accenti e simboli come & o ? in sequenze percentuali che un indirizzo web può contenere senza rompersi. Questo strumento del KIT codifica o decodifica un testo o un parametro nel browser, mostrando subito il risultato pronto da incollare in un link.
Esegui gratis nel browser
Funziona nel tuo browser: gratis, senza registrazione, i file non escono dal tuo dispositivo.
Perché un link con la città sbagliata smette di funzionare
Uno spazio, una à o una è dentro un parametro rompono l'URL o cambiano il significato di quello che arriva al server: 'Città' diventa un pezzo di indirizzo illeggibile, '&' viene scambiato per il separatore tra due parametri diversi. La codifica URL sostituisce ogni carattere non ammesso con una sequenza percentuale (%20 per lo spazio, %C3%A0 per la à), così il link resta un unico indirizzo valido e il server riceve esattamente il testo che intendevi.
Componente o URL intero: la differenza che confonde
Codificare l'intero indirizzo e codificare solo un parametro non sono la stessa cosa: se codifichi anche le barre e i due punti di 'https://', il link smette di funzionare. Questo strumento codifica il valore di un singolo parametro — un nome, una query di ricerca, l'oggetto di una email — lasciando intatta la struttura del link attorno. È la distinzione che nel codice separa encodeURIComponent da encodeURI, spiegata senza dover aprire la console.
Decodificare per capire cosa arriva davvero
Un log pieno di %20 e %C3%A8 è illeggibile a occhio: incollalo qui e torna testo normale, utile per capire cosa ha cercato davvero un utente o quale parametro sta arrivando storto in un'integrazione. Funziona anche al contrario di quanto ti aspetti: se un parametro sembra corretto ma il sistema a valle lo rifiuta, decodificarlo rivela spesso un doppio incoding, cioè un testo codificato due volte per errore.
Resta nel browser, via API per i flussi automatici
La conversione avviene sul tuo dispositivo: nessun testo che incolli, magari con dati personali dentro una query, viene inviato altrove. Per farlo in automatico dentro uno script o un job che genera link in blocco — per esempio un tool di email marketing che costruisce decine di link di tracciamento — c'è l'API a $0.002 a richiesta; per un controllo al volo mentre scrivi un link a mano, la pagina basta e non costa niente.
Casi d'uso
Un link di ricerca con il nome di una città
Un e-commerce genera link diretti ai risultati di ricerca: per 'Città di Castello' o 'Forlì-Cesena' l'URL deve codificare correttamente spazi e accenti, altrimenti la pagina di destinazione non trova nulla.
Un mailto con oggetto e accenti
Alessandro Ferrari crea un pulsante 'Scrivici' che apre un'email precompilata con oggetto 'Richiesta preventivo, società già pronta': senza codifica URL, l'oggetto arriva troncato o corrotto nel client di posta.
Capire un parametro che arriva sbagliato
Un webhook riceve un parametro che sembra corrotto: decodificando la stringa si scopre che il sistema a monte l'aveva già codificata una volta, e il proprio codice la codificava di nuovo per errore.
Domande frequenti
Perché uno spazio a volte diventa %20 e a volte +?
%20 è lo standard generale per gli URL; il simbolo + è una convenzione più vecchia, tipica dei form HTML, dove indica lo spazio solo nella query string. Qui usiamo %20, il formato corretto per la maggior parte dei casi.
Gli accenti italiani vengono gestiti bene?
Sì. Lettere come à, è, ò diventano sequenze percentuali che rappresentano il carattere UTF-8 corretto, e la decodifica le riporta esattamente come le hai scritte.
Devo codificare l'intero link o solo un pezzo?
Di solito solo il valore del parametro, non l'intero indirizzo: codificare anche '://' o '/' rompe la struttura del link. Questo strumento è pensato per il valore, non per l'URL completo.
Il testo che incollo viene inviato online?
No, la conversione avviene nel browser: il testo resta sul tuo dispositivo, anche se contiene dati personali dentro una query.
È diverso dalla codifica Base64?
Sì: la codifica URL sostituisce solo i caratteri non ammessi in un indirizzo, Base64 trasforma dati binari interi in testo. Servono a problemi diversi.
Posso automatizzarlo per generare tanti link insieme?
Sì, via API a $0.002 a richiesta: comodo per uno script che costruisce in blocco link con parametri diversi.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/dev/url-encode \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/dev/url-encode", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/url-encode",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/url-encode", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/url-encode", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"items": [
"valor-1",
"valor-2"
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.url_encode",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |