ForHosting KIT · Ferramentas para dev

Analise cabeçalhos HTTP e converta em um objeto

Cole um bloco bruto de cabeçalhos HTTP e receba um objeto JSON previsível, pronto para depuração, testes, scripts ou ferramentas de API.

● BetaGrátis · no seu navegador
Use pelo WebAPIE-mailTelegramApp em breve

Os nomes são normalizados em minúsculas, os espaços externos dos valores são removidos e nomes repetidos, como Set-Cookie, são preservados na ordem em arrays, sem sobrescrever dados. Cada linha não vazia deve seguir a estrutura padrão Name: Value; caso contrário, a ferramenta retorna um erro claro, nunca um resultado parcial.

Transforme blocos copiados em dados estruturados úteis

As ferramentas de desenvolvimento do navegador, clientes de linha de comando, proxies reversos e logs de servidor costumam exibir cabeçalhos HTTP como linhas simples. Esse formato é fácil de ler, mas inconveniente para consultar, comparar ou armazenar por código. Este analisador transforma cada linha Name: Value válida em uma propriedade dentro de um único objeto headers. Os nomes são convertidos para minúsculas porque campos HTTP não diferenciam maiúsculas de minúsculas; assim, Content-Type e content-type apontam para a mesma propriedade. Os espaços ao redor do valor são removidos, mas os dois-pontos internos permanecem intactos. Isso é essencial para horários, URLs, esquemas de autorização e outros valores que usam pontuação legítima. O resultado pode ser copiado diretamente para uma fixture, enviado a outro script ou comparado com uma resposta esperada. Uma linha vazia no final é aceita, pois blocos HTTP copiados frequentemente incluem o separador anterior ao corpo. Linhas vazias ou malformadas no meio são rejeitadas para impedir que uma análise incompleta pareça correta.

Preserve cabeçalhos duplicados sem descartar informações

Um objeto JavaScript comum guarda apenas um valor por chave. Por isso, um analisador simplista sobrescreve valores anteriores sempre que o mesmo nome aparece novamente. Esse comportamento pode apagar silenciosamente informações importantes do protocolo. A capacidade retorna uma string quando o cabeçalho aparece uma vez e converte a propriedade em um array quando encontra o mesmo nome, sem considerar diferenças entre maiúsculas e minúsculas. Outras ocorrências são acrescentadas na ordem original. A regra funciona para Set-Cookie, Warning, Link e qualquer campo repetido, sem tentar combinar valores com vírgulas. Essa decisão é intencional: diferentes cabeçalhos seguem regras distintas, e Set-Cookie especialmente não pode ser tratado como uma lista genérica separada por vírgulas. Um valor vazio continua válido quando os dois-pontos estão presentes; portanto, X-Optional: vira uma string vazia, não um erro. O analisador não interpreta datas, cookies, tipos de mídia, pesos de qualidade ou credenciais. Ele preserva os valores como texto para o componente que conhece a semântica daquele cabeçalho.

Encontre linhas inválidas cedo e use o resultado com segurança

Uma análise confiável depende tanto de rejeitar entradas ruins quanto de converter as boas. Cada linha precisa começar com um nome de campo HTTP válido, seguido imediatamente por dois-pontos e pelo valor. O nome pode conter os caracteres token permitidos pelo HTTP, mas não aceita espaços, tabulações, parênteses, separadores ou recuo inicial. Linhas de continuação dobradas, hoje obsoletas, são rejeitadas em vez de anexadas ao valor anterior. Isso evita resultados ambíguos e incentiva o envio de um bloco moderno e normalizado. Quando a validação falha, o erro informa a linha relevante e esclarece se o problema está no par ou no nome. Nenhum objeto parcial é devolvido. Assim, a capacidade funciona bem em pipelines de importação e testes automatizados, nos quais aceitar metade de um bloco seria pior do que interromper a operação. O processamento é local e determinístico: não há solicitações de rede, campos baseados em horário, números aleatórios ou consultas externas. O mesmo texto produz a mesma estrutura JSON no navegador e pela API, cujo preço básico é US$ 0,002.

Monte fixtures para testes de API

Converta cabeçalhos copiados de um rastreamento HTTP em JSON estruturado para uma fixture de resposta determinística.

Examine campos repetidos da resposta

Mantenha cada ocorrência de Set-Cookie, Link ou Warning na ordem, sem perder valores anteriores na conversão.

Valide diagnósticos importados

Rejeite linhas malformadas antes de inserir um trecho de log em um fluxo de depuração, suporte ou observabilidade.

Como nomes de cabeçalho duplicados são representados?

Um nome presente uma vez aponta para uma string. Quando se repete, o valor vira um array na ordem de entrada.

Os nomes dos cabeçalhos diferenciam maiúsculas de minúsculas?

Não. Eles são normalizados em minúsculas; portanto, Content-Type e content-type são tratados como o mesmo cabeçalho.

Um valor de cabeçalho pode conter dois-pontos?

Sim. Apenas os primeiros dois-pontos separam o nome do valor; todos os outros continuam fazendo parte do valor.

O que acontece quando uma linha está malformada?

A solicitação inteira falha com um erro de entrada que identifica a linha. Nenhum objeto parcial é retornado.

O analisador divide cookies ou valores separados por vírgula?

Não. Os valores permanecem como texto, exceto pelos espaços externos. Linhas físicas repetidas são arrays.

Quanto custa usar pela API?

O preço básico é US$ 0,002 por solicitação. A versão no navegador roda localmente sem enviar o bloco pela rede.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

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

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

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"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Ver a documentação completa do KIT →