ForHosting KIT · Strumenti per sviluppatori

Analizzi le intestazioni HTTP in un oggetto chiave-valore

Incolli un blocco grezzo di intestazioni HTTP e ottenga un oggetto JSON prevedibile, pronto per debug, test, script o strumenti API.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

I nomi vengono normalizzati in minuscolo, gli spazi esterni dei valori vengono rimossi e i nomi ripetuti, come Set-Cookie, restano ordinati in array anziché essere sovrascritti. Ogni riga non vuota deve rispettare la struttura standard Name: Value; in caso contrario viene restituito un errore chiaro, mai un risultato parziale.

Trasformi i blocchi copiati in dati strutturati utilizzabili

Gli strumenti per sviluppatori del browser, i client da riga di comando, i reverse proxy e i log dei server mostrano spesso le intestazioni HTTP come semplici righe. Il formato è facile da leggere, ma scomodo da interrogare, confrontare o archiviare tramite codice. Questo parser converte ogni riga Name: Value valida in una proprietà di un unico oggetto headers. I nomi vengono normalizzati in minuscolo perché i campi HTTP non distinguono maiuscole e minuscole: Content-Type e content-type indicano quindi la stessa proprietà. Gli spazi attorno al valore vengono rimossi, mentre i due punti al suo interno restano invariati. La distinzione è importante per date, URL, schemi di autorizzazione e altri valori che contengono punteggiatura legittima. Lei può copiare il risultato direttamente in una fixture, passarlo a un altro script o confrontarlo con una risposta prevista. Una riga vuota finale è ammessa perché spesso separa le intestazioni dal corpo del messaggio. Una riga vuota o non valida all’interno del blocco viene invece rifiutata, evitando che un’analisi incompleta sembri riuscita.

Mantenga le intestazioni duplicate senza perdere informazioni

Un normale oggetto JavaScript conserva un solo valore per chiave; un parser troppo semplice sovrascrive quindi i valori precedenti quando un nome compare di nuovo. Questo comportamento può eliminare silenziosamente dati significativi del protocollo. La capacità restituisce una stringa se l’intestazione compare una volta e trasforma la proprietà in un array quando ritrova lo stesso nome, indipendentemente dalle maiuscole. Le occorrenze successive vengono aggiunte nell’ordine originale. La regola vale per Set-Cookie, Warning, Link e qualsiasi altro campo ripetuto, senza tentare di unire i valori con virgole. È una scelta intenzionale: le regole di combinazione cambiano a seconda del campo e Set-Cookie, in particolare, non deve essere trattato come un elenco generico separato da virgole. Un valore vuoto resta valido se sono presenti i due punti, perciò X-Optional: diventa una stringa vuota e non un errore. Il parser non interpreta date, cookie, media type, pesi di qualità o credenziali. Conserva il testo affinché venga elaborato dal componente che comprende quella specifica intestazione.

Individui subito le righe errate e usi il risultato in sicurezza

Un parsing affidabile dipende dal rifiuto corretto quanto dalla conversione. Ogni riga deve iniziare con un nome di campo HTTP valido, seguito immediatamente dai due punti e dal relativo valore. I nomi possono contenere i caratteri token ammessi da HTTP, ma non spazi, tabulazioni, parentesi, separatori o rientri iniziali. Le obsolete righe di continuazione ripiegate vengono rifiutate invece di essere unite al valore precedente: ciò previene risultati ambigui e invita a fornire un blocco moderno e normalizzato. Se la validazione fallisce, l’errore identifica la riga interessata e chiarisce se non è valida la coppia oppure il nome. Non viene restituito alcun oggetto parziale. La capacità è quindi adatta a pipeline di importazione e test automatici, dove accettare metà blocco sarebbe peggio che interrompersi. L’elaborazione è locale e deterministica: non ci sono richieste di rete, campi dipendenti dall’ora, valori casuali o ricerche esterne. Lo stesso testo produce la stessa struttura JSON nel browser e tramite API, il cui prezzo base è $0.002.

Prepari fixture per i test API

Converta le intestazioni copiate da una traccia HTTP in JSON strutturato da salvare in una fixture di risposta deterministica.

Esamini i campi di risposta ripetuti

Mantenga nell’ordine ogni occorrenza di Set-Cookie, Link o Warning senza perdere i valori precedenti durante la conversione.

Convalidi la diagnostica importata

Rifiuti le righe errate prima che un estratto di log entri in un flusso di debug, assistenza o osservabilità.

Come vengono rappresentati i nomi di intestazione duplicati?

Un nome presente una volta corrisponde a una stringa. Se si ripete, il valore diventa un array nell’ordine di ingresso.

I nomi delle intestazioni distinguono maiuscole e minuscole?

No. I nomi vengono normalizzati in minuscolo, quindi Content-Type e content-type sono la stessa intestazione.

Il valore di un’intestazione può contenere due punti?

Sì. Solo i primi due punti separano nome e valore; tutti quelli successivi restano parte del valore.

Che cosa accade se una riga non è valida?

L’intera richiesta fallisce con un errore di input che identifica la riga. Non viene mai restituito un oggetto parziale.

Il parser divide cookie o valori separati da virgole?

No. I valori restano testo, eccetto gli spazi esterni. Le righe fisiche ripetute sono rappresentate come array.

Quanto costa l’uso tramite API?

Il prezzo base è $0.002 per richiesta. La versione nel browser opera localmente senza inviare il blocco in rete.

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.

POSThttps://api.kit.forhosting.com/dev2/http-header-parse

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/dev2/http-header-parse \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Content-Type: application/json\r\nCache-Control: no-cache\r\nSet-Cookie: theme=dark\r\nSet-Cookie: session=abc123"}'
{
  "text": "Content-Type: application/json\r\nCache-Control: no-cache\r\nSet-Cookie: theme=dark\r\nSet-Cookie: session=abc123"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev2.http_header_parse",
  "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.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →