程序员 - PHP网站不用COOKIE如何实现一周内自动登录,谢谢
回复内容:
PHP网站不用COOKIE如何实现一周内自动登录,谢谢
http是无状态的,它分不清你是谁,是否登录过。所以要在客服端存个记号,等访问服务器时,把这个记号带过去,它就相当认识你了,至于这个记号你怎么实现那就是你选择的问题了。不过从兼容性、易用性等方面考虑。cookies还是不二之选。
html5local storage
在本地存token。要不就activex
吧。
不用cookie,那怎么识别,这应该不行吧。
不可能~~~~
没办法实现吧 受限于http协议不是吗?客户端总要存储东西吧。。。
此问题的本质是:浏览器端的本地数据存储方案,而非什么http协议的局限性。
具体可以glgoo.com下【浏览器本地存储方案】,一搜一大片,这里不再赘述。
例如chrome支持的本地存储方案:
之前看到有个同ETag实现Session的论调,不过,这种方式太Geek了,而且不一定稳定。
方法有,但cookie是最好的选择。
在本地存储的方案中cookie自带页面请求时主动发送数据,不二之选。
可以在用户登陆后,给用户的地址添加token,然后这个token有效期是一周
eg. http://segmentfault.com/q/1010000000666346?tk=e2hf92ehfui2hj9dxhj19dsh9u21hd921hwf9de2h9f
只要最后又tk=e2hf92ehfui2hj9dxhj19dsh9u21hd921hwf9de2h9f,那么就通过认证了
至于这个tk怎么生成,怎么校验,就需要更详细分析了
但是大部分来说,这种方式会有极大的泄露风险(cookie也不安全就是...但是url通常会因为无意识的泄露而导致更不安全)
直接用url传递用户token或者SESSION_ID
用mac地址
下一篇: 关于动画结束的处理