Nombrar cookies: mejores prácticas [cerrado]

107

¿Cómo deberían verse los nombres de las cookies?

Deberían ser:

  • minúscula
  • El caso de Carmel
  • Underscore_Camel_Case
  • MAYÚSCULAS

¿O deberían ser otra cosa?

Emanuil Rusev
fuente
1
¡Buena pregunta! Lo votaría si me quedaran votos.
Pekka
1
@Pekka: voté a favor de ti. Yo también lo votaría, pero solo puedo votar una vez :(
Charlie Brown
2
@Bran, voté a favor de ti ya que de todos modos obtengo nuevos votos en unos minutos. Oh, pero también iba a votar por esto ... Dios, maldita sea.
Tor Valamo
1
¡Gracias Jacob! Eso nos da un paso adelante. No planeaste votar a favor de esta pregunta por casualidad, ¿verdad? Porque si lo hizo, ¡necesitaremos otro voluntario más!
Pekka
1
Por si acaso, no lo haría. Entonces, aquí está mi +1 para ustedes. :)
Hilton Perantunes

Respuestas:

66

appname_meaningfulname

Ignacio Vázquez-Abrams
fuente
10
@Emanuil: Para distinguirlo de todas las demás cookies generadas por otras aplicaciones del mismo dominio.
Ignacio Vazquez-Abrams
2
@Emanuil Rusev, los complementos del navegador a veces establecen cookies. Aprendí esto de la manera difícil cuando mi sitio web recogió una cookie y obtuvo los datos establecidos por el complemento del usuario en lugar de los datos establecidos por mi sitio.
lala
8

Tenga en cuenta que esta cookie se envía con cada solicitud, así que en mi humilde opinión, solo use el nombre más pequeño que pueda y documente su código de manera agradable.

MatthieuP
fuente
4

Debe ser algo que evite los conflictos de nombres con los parámetros _GET y _POST arbitrarios que pueda estar usando, ya que _REQUEST envuelve las tres matrices globales (!), Con prioridad dependiendo de cómo se establezca su configuración de variables_order en php.ini. En otras palabras, si tiene una _COOKIE llamada "x" y un parámetro de cadena de consulta llamado "x", y solicita $ _REQUEST ["x"], obtiene el valor de la cookie cuando podría querer / esperar el parámetro GET. Esto es especialmente problemático si sus cookies tienen como alcance la raíz "/" de su sitio web y no la carpeta donde se consumen.

Por eso digo, dos mejores prácticas:

  1. asegúrese de limitar el alcance de sus cookies a la ruta donde se leen y escriben, (el tercer argumento del método setcookie () hace esto)
  2. Dé a sus cookies algún tipo de convención de nomenclatura específica de cookies. Sugiero un sitio web inverso, como espacios de nombres java, luego ".". {Appname}. ".". {Nombre de cookie descriptivo camel cased} Entonces, si su sitio es www.testsite.com, y su aplicación es foo, y su variable es "bar bar bar bar bar barann", sería "com.testsite.foo.barBarBarBarBarBarann"
WillieMack
fuente
3
¿Ha visto algunas de estas prácticas en un sitio web en vivo?
Emanuil Rusev
0

Utilizo cualquier estilo que requieran los estándares de codificación para el proyecto.

En general, prefiero camelCase para los esquemas de nombres, pero el que pague las facturas es con el que iré.

zombat
fuente
0

Quizás no te guste mi respuesta:

No utilice sus propias cookies, almacene datos en sesiones de servidor. Por lo tanto, solo necesita una cookie (para hacer referencia a la identificación de la sesión) y cómo nombra eso no juega ningún papel.

NineBerry
fuente
9
Eso se vuelve complicado con los balanceadores de carga, ya que entonces la sesión debe almacenarse en una base de datos que no está en el mismo host (o posiblemente incluso en el mismo centro de datos). A veces, las cookies están bien.
dotancohen
1
@dotancohen, ¿puede proporcionar algunos enlaces sobre el problema que describe? ¡gracias!
Sharky
1
"No use cookies" suena un poco puritano; pero me gusta este intento de mantener las cosas limpias para el usuario.
Parapluie
Securecookies se puede utilizar de forma segura sin ningún almacenamiento de sesión del lado del servidor. No tienen que ser enormes (en realidad, hay un límite de 4k que es bastante modesto) y evitan los balanceadores de carga y / o las búsquedas de bases de datos centralizadas.
colm.anseo