Lê o valor de um cookie específico pelo nome diretamente na rede global da Azion e o utiliza para moldar a resposta. Isso é útil para testes A/B, personalização ou qualquer lógica que dependa de dados que sua aplicação já armazena nos cookies do visitante.
const COOKIE_NAME = "hubspotutk"
function getCookie(request, name) { let result = "" const cookieString = request.headers.get("Cookie") if (cookieString) { const cookies = cookieString.split(";") cookies.forEach(cookie => { const cookiePair = cookie.split("=", 2) const cookieName = cookiePair[0].trim() if (cookieName === name) { const cookieVal = cookiePair[1] result = cookieVal } }) } return result}
function handleRequest(request) { const cookie = getCookie(request, COOKIE_NAME) if (cookie) { return new Response(cookie) } return new Response("No cookie with name: " + COOKIE_NAME)}
addEventListener("fetch", event => { event.respondWith(handleRequest(event.request))})Como funciona
A função auxiliar getCookie lê o cabeçalho Cookie com request.headers.get("Cookie"), divide o conteúdo em pares individuais usando ; e separa cada par por = para comparar o nome do cookie com o desejado. Quando encontra uma correspondência, retorna o valor desse cookie. Em seguida, o handler do evento fetch chama getCookie e usa event.respondWith() com um novo Response, retornando o valor do cookie ou uma mensagem indicando que o cookie não estava presente.