«

»

Aug 23

Print this Post

Como posso detectar se um navegador aceita cookies ?

Este script deve ser colocado em uma página vazia, sem qualquer conteúdo. Uma vez que a página nunca será exibida para o navegador. As páginas reais são yescookie.cfm e nocookie.cfm.

Por favor, note que usamos redirecionamento server-side (forward) em vez de redirecionamento client-side () sendo que os mecanismos de pesquisa (search engines) tendem a penalizar Websites que executam redirecionamento client-side.

Como um bônus adicionado, utilizando getPageContext (). Forward (), mantemos o mesmo url visível dentro da barra do navegador, possibilitando uma melhor experiência do usuário e bookmark adequado.

<cfif structKeyExists(cookie, "tmtCookieTest")>  
     <cfset getPageContext().forward("yescookie.cfm")>
<cfelseif NOT structKeyExists(url, "tmtCookieSend")>  
     <!--- First time the user visit the page, set the cookie --->
     <cfcookie name="tmtCookieTest" value="Accepts cookies">
     <!--- The cookie was send, redirect and set the tmtCookieSend flag as an url variable --->
     <cfset getPageContext().forward("#cgi.script_name#?tmtCookieSend=true")>
<cfelseif structKeyExists(url, "tmtCookieSend")>
     <!--- We tried sending the cookie, no way, cookies are disabled, get out of here --->
     <cfset getPageContext().forward("nocookie.cfm")>
</cfif>

by Massimo Foti

Permanent link to this article: http://ensina.me/coldfusion/como-posso-detectar-se-um-navegador-aceita-cookies/

Leave a Reply