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 (<cflocation>) 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
0 responses to “Como posso detectar se um navegador aceita cookies?”