Javascript 在网站页面之间传输数据

Javascript 在网站页面之间传输数据,javascript,mysql,cookies,Javascript,Mysql,Cookies,在网站上从一页到另一页传输数据的最佳方式是什么?例如,我已登录此网站并保持登录状态,无论我切换页面多少次,甚至关闭浏览器。这到底是怎么做到的?我正在考虑使用饼干,但我真的不确定 谢谢!是的,您通常会保持登录状态,因为有一个cookie存储您的会话ID。有两个选项cookie和会话 经验法则:不要信任用户输入。Cookie是用户输入,存储在Cookie中的会话ID是用户输入,http头是用户输入——这些东西必须针对每一个可能的东西进行三重检查。另一方面,会话数据存储在服务器上,因此如果不存储在/t

在网站上从一页到另一页传输数据的最佳方式是什么?例如,我已登录此网站并保持登录状态,无论我切换页面多少次,甚至关闭浏览器。这到底是怎么做到的?我正在考虑使用饼干,但我真的不确定


谢谢!

是的,您通常会保持登录状态,因为有一个cookie存储您的会话ID。

有两个选项cookie和会话

经验法则:不要信任用户输入。Cookie是用户输入,存储在Cookie中的会话ID是用户输入,http头是用户输入——这些东西必须针对每一个可能的东西进行三重检查。另一方面,会话数据存储在服务器上,因此如果不存储在/tmp中,它或多或少是安全的

会话授权最常用的设置之一是:会话id存储在cookie中,其他所有内容(包括密码)都存储在会话中。基于cookie中的id启动会话后,您应该从会话数据中获取用户id,然后检查存储在其中的密码是否仍然有效

如果设置会话变量,用户不能直接更改它,除非他们劫持另一个会话cookie

您主要需要注意的是在共享主机上,您的会话数据不安全(通常其他站点可以看到)

同样值得注意的是,cookie数据也不安全。它不应该像表单数据那样被依赖(不管客户端验证告诉你什么)

您使用密码的最佳做法是:

  • 以散列形式将密码存储在数据库中,最好是SHA1(第一选择)或MD5(第二选择)
  • 当您收到用户密码时,对其进行加密并对照数据库中存储的内容进行检查
  • 在用户会话中设置登录用户名
  • 在一段时间后(即使是几天)使cookie过期,而不是使其永远过期;以及
  • 尽可能使用安全连接(HTTPS而不是HTTP)。SSL证书很便宜

我想我明白了。所以我会:->让用户登录。->当他们登录时,将用户名存储在会话中。->将会话存储在一个过期的cookie中。->当我从一页转到另一页时,访问cookie和会话以获取用户信息。