需求:
直播APP要登录微商城,传 AES 加密的用户名和密码至服务端,服务端进行一系列验证,正确会返回微商城首页 URL,点进去实现免登陆。
踩坑:
直接把登录信息放入 COOKIE 中,IOS根据返回的URL地址可以实现自动登录,但Android有问题,不能实现自动登录。
解决方法:
把用户名和密码加密,放在 登录成功 返回的 URL 中,在微商城基类中做个判断,GET接收用户名和密码,解密进行一系列处理,然后把登录信息放入 COOKIE 或 SESSION 中,实现免登陆!
Paste_Image.png
Paste_Image.png
单点登录两种情况:
一.用户只需登录一次,即可在所有域下网站实现免登陆。
1.用户登录成功后,在页面模拟登录其它站点,把登录信息发送过去;退出操作时,模拟退出其它站点。
2.修改session的handler (比如memcache、mysql等) 让多个站点server的php连接同一个服务器的 (如memcached)
代码(略)
二.同个用户同时只能登陆一个, 后登陆者踢掉前登陆者。
用户表加上token和过期时间overtime字段。用户注册时,生成加密的token,设置过期时间overtime。当用户登录时,重新生成token和过期时间overtime。其它端登录的此用户在验证token的时候就会提示token验证失败,从而退出登录。实现单点登录。
代码(略)
网友评论