为了账号安全,请及时绑定邮箱和手机立即绑定

小程序登录状态保持(自有第三方账号)?

小程序登录状态保持(自有第三方账号)?

holdtom 2018-11-17 18:08:05
问题描述 我看了小程序的wx.login和wx.checkSession,wx.login与其之后让后端去像腾讯提供的那个接口就是换取session_key,然后自己生成一个sessionid保持登录状态。  现在的情况是这样的,我们的项目最开始做的是web端,现在准备迁移到小程序上,这套系统有自己的账号密码,这样的话,可否我不用wx.login,wx.checkSession,这样是否合理(因为我不使用openid作为用户标识)?我的想法是在用户登录之后,从服务器取得的sessionid存到storage当中,然后用来设置头,但现在又面临一个问题,我可以封装一下wx.request加上判断session是否还有效了,但是没有openid的维持可能就需要用户重新登录,如果不想用户重新输入那么可能得storage存下账号密码重新发送一次?(是不是也还不是合理)  还有过一个比较合理的想法,就用wx.login来换取session,openid和我们系统的账号一一对应,之后登录直接用openid, 以什么样的方式比较好解决这类问题?希望有人能够给我一些解答。
查看完整描述

1 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞


  1. 抛弃openid
    这就最简单了,直接进入小程序后自己做个登陆注册页,登录注册完后台有个sessionid返回来,给小程序放wx.request的header中。后台每次都在请求的header中拿sessionid,有效就继续,没效或没有就返回相应信息去给小程序重新登陆。
    不过小程序的好多功能的用不了。注册页麻烦要填写好多东西。不推荐

  2. 原有系统扩展兼容openId。

    • 如果已经注册了,就给加上openid,直接把当前用户生成的sessionid返回给小程序就好了。

    • 如果没注册,就创建了新用户,用户名密码都为手机号,opendi对应存起来,然后再生成sessionid返回给小程序就好了。

    • 新建个表存用户openId,关联用户表。

    • 小程序 wx.login + 用户信息 + 手机号码 =》 给后台得到:openid,用户信息,手机号码。

    • 根据手机号码查数据库当前手机号码是否已注册。


查看完整回答
反对 回复 2018-11-17
  • 1 回答
  • 0 关注
  • 3157 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信