微信小程序登陆问题?

本文详细介绍了微信小程序的登录流程,从wx.login获取code,到服务器端换取openid和session_key,再到客户端保存登录态。同时,讨论了登录态在实际应用中的维护,包括如何检查登录态的有效性,以及用户非首次进入应用时的登录态处理策略。
摘要由CSDN通过智能技术生成

做一个应用,肯定避免不了登录操作。用户的个人信息啊,相关的收藏列表等功能都需要用户登录之后才能操作。一般我们使用token做标识。
小程序并没有登录界面,使用的是 wx.login 。 wx.login 会获取到一个 code,拿着该 code 去请求我们的后台会最后返回一个token到小程序这边,保存这个值为 token 每次请求的时候带上这个值。
一般还需要把用户的信息带上比如用户微信昵称,微信头像等,这时候就需要使用 wx.getUserInfo ,这里涉及到一个用户授权的问题
带上用户信息就够了嘛? too young too simple!我们的项目不可能只有小程序,相应的微信公众平台可能还有相应的App,我们需要把账号系统打通,让用户在我们的项目中的账户是同一个。这就需要用到微信开放平台提供的 UnionID 。

登陆

//app.js
App({
  onLaunch: function () {
    console.log('App onLaunch');
    var that = this;
    //  获取商城名称
    wx.request({
      url: 'https://api.it120.cc/'+ that.globalData.subDomain +'/config/get-value',
      data: {
        key: 'mallName'
      },
      success: function(res) {
        wx.setStorageSync('mallName', res.data.data.value);
      }
    })
    this.login();
    this.getUserInfo();
  },
  login : function () {
    var that = this;
    var token = that.globalData.token;
    // 如果有token
    if (token) {
      // 检查token是否有效
      wx.request({
        url: 'https://api.it120.cc/' + that.globalData.subDomain + '/user/check-token',
        data: {
          token: token
        },
        success: function (res) {
          // 如果token失效了
          if (res.data.code != 0) {
            that.globalData.token = null;
            that.login(); // 重新登陆
          }
        }
      })
      return;
    }

    // 【1】调用微信自带登陆
    wx.login({
      success: function (res) {
        // 【2】 拿到code去访问我们的后台换取其他信息
        wx.request({
          url: 'https://api.it120.cc/'+ that.globalData.subDomain +'/user/wxapp/login',
          data: {
            code: res.code
          },
          s
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flask是一个基于Python的轻量级Web框架,可以用于构建各种类型的Web应用程序,包括微信小程序登陆注册功能。下面是使用Flask实现微信小程序登陆注册的一般步骤: 1. 配置微信小程序开发者账号:在微信公众平台注册开发者账号,并创建一个小程序应用。获取小程序的AppID和AppSecret,这些信息将用于后续的登陆注册验证。 2. 初始化Flask应用:使用Flask框架创建一个新的应用,并配置相关的路由和视图函数。 3. 实现微信登陆:在Flask应用中创建一个登陆的路由,当用户点击登陆按钮时,前端将调用微信提供的API获取用户的OpenID和SessionKey。在后端,你可以使用Flask的请求处理函数来接收并处理这些数据。 4. 验证用户身份:根据获取到的OpenID和SessionKey,你可以通过微信提供的API来验证用户的身份。验证成功后,可以生成一个用户凭证(例如JWT)并返回给前端。 5. 实现用户注册:在Flask应用中创建一个注册的路由,当用户点击注册按钮时,前端将提交用户的注册信息(例如用户名、密码等)。在后端,你可以将这些信息保存到数据库中,并返回注册成功的消息给前端。 6. 完善其他功能:除了登陆注册功能外,你还可以根据需求实现其他功能,例如用户信息修改、密码重置等。 以上是使用Flask实现微信小程序登陆注册的一般步骤,具体的实现细节会根据你的需求和技术栈而有所不同。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值