我刚刚用HTML5,PHP和Node.js开始了自己的小项目。 目前一切正常,就像我想要的那样。但在检查代码后,我想到了一些东西。我的网站应该是拍卖行。我将userid存储在我的数据库中,并在网站上将id作为id标记。
这是问题所在。如果有人现在对这些项目进行投标,我只需将id并将其发送到我的node.js服务器。从技术上讲,有人可以将此ID更改为已注册的其他人的ID。目前我没有真正的解决方案,因为这是我的第一个网站。
我想过每次用户登录时都可能会将phpsessionid cookie插入用户数据库,然后每当他对某个项目进行出价时,都会将这些cookie与userid一起发送到数据库。然后,node.js服务器将存储的值与发送的值进行比较,以验证正确的用户是否发送了出价。 我现在的问题是,这是一个很好的解决方案还是有更好的方法?
编辑: 一些代码:
<li class='dropdown' id='steam' title='".$steamprofile['avatarmedium']."' name='".$steamprofile['steamid']."'><a href='#'class='dropdown-toggle' data-toggle='dropdown' role='button' aria-haspopup='true' aria-expanded='false' style='padding-top:0px;padding-bottom:0px;line-height:50px'><img src='".$steamprofile['avatar'].">'><span class='caret'></span></a><ul id='profilenav' class='dropdown-menu'><li><a href='?logout'>Logout</a></li></ul></li>;
因此,这是我使用openid
登录后创建的部分var steamid=document.getElementById("steam").getAttribute("name");
socket.emit('status added',{itemid:id, tmerid:timerid, steamid: steamid, avatar: avatarlink});
这是我获取用户标识并将其发送到node.js服务器的方式