我正在使用html
和javascript
用于客户端,php
用于服务器。每个用户在注册后,都会有一个由服务器生成的userID
,并存储在数据库中。在服务器中,我正在使用setcookie
,以便用户不必每次转到另一个页面时都登录。
- 我
的第一个问题是,我应该只将
userID
存储在用户的cookie中进行验证吗?这有多安全?我的第二个问题是如何在每次用户打开页面时检查cookie。我是否在每次用户打开页面时向服务器进行"不可见"的 ajax 调用(使用 javascript 中的
getCookie("userID")
发送其 cookie)?
自从我完成学业后,我永远不知道我做事的方式是否正确,或者我的代码是否是垃圾。你们如何确定你的代码是"正确"的方法,还是纯粹基于经验?
- 不,它根本不安全 - 用户可以设置和修改 cookie。
- 如果你使用的是PHP(我认为你有一个标签"PHP"),你应该使用SESSIONS。
检查文档:http://www.php.net/manual/en/book.session.php
快速示例:
<?php
session_start();
var_dump($_SESSION['user_id']);
$_SESSION['user_id'] = 123;
在第一次请求时,它会打印类似 null
的东西,在其他请求上 - 123
.它的工作原理是生成随机值并设置为不容易猜到的cookie,然后通过生成的密钥将所有会话数据存储到文件或其他存储中。