Introdução
Neste laboratório, vamos mergulhar no tópico de análise (parsing) de cookies HTTP em JavaScript. O objetivo deste laboratório é fornecer uma experiência prática de como extrair e organizar dados de cookies a partir de uma string de cabeçalho HTTP. Ao final deste laboratório, você terá uma compreensão clara de como usar a função parseCookie para criar um objeto contendo todos os pares nome-valor dos cookies.
Função JavaScript para Analisar Cookies HTTP
Para analisar (parse) uma string de cabeçalho Cookie HTTP em JavaScript e retornar um objeto com todos os pares nome-valor dos cookies, siga estes passos:
- Abra o Terminal/SSH e digite
nodepara começar a praticar a codificação. - Use
String.prototype.split()para separar os pares chave-valor uns dos outros. - Use
Array.prototype.map()eString.prototype.split()para separar as chaves dos valores em cada par. - Use
Array.prototype.reduce()edecodeURIComponent()para criar um objeto com todos os pares chave-valor.
Aqui está um exemplo da função parseCookie() que implementa os passos acima:
const parseCookie = (str) =>
str
.split(";")
.map((v) => v.split("="))
.reduce((acc, v) => {
acc[decodeURIComponent(v[0].trim())] = decodeURIComponent(v[1].trim());
return acc;
}, {});
Você pode testar a função da seguinte forma:
parseCookie("foo=bar; equation=E%3Dmc%5E2");
// { foo: 'bar', equation: 'E=mc^2' }
Resumo
Parabéns! Você concluiu o laboratório de Análise de Cookie. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.