微信小程序开发记录(1)

1.开发准备

首先是小程序注册和开发工具下载,地址如下:
注册小程序
开发工具下载
主要 参考官方文档 写的比较清楚
官方文档

2.建立连接

首先 建立小程序 与服务器的连接(登录)官方流畅图:

小程序

简单描述:客户端获取code 传给服务器, 通过用小程序信息和code 传给微信服务器,返回session_key+openid 服务器生成3rd_session 为key session_key+openid 为value 存储,返回给客户端 3rd_session 客户端放入本地存储 每次请求 带上 3rd_session.

代码

onLogin:

//传递两个参数 方法和方法所需参数 在某个方法调用过程中如果session无效或过期 需要重新登录 再次执行此方法
  onLogin: function (fn, e) {
    wx.showLoading({ title: '' })
    var that = this
    wx.login({
      success: function (res) {
        wx.request({
          url:URL ,
            data:datas,
            success: function (res) {
              var value = res.data
              //session存到本地缓存
              wx.setStorageSync('rd_session', value)
              wx.hideToast()
              //全局变量 第一个控制首页 是否访问 只有登录成功时 为true
              // 第二个 控制重新登录次数 session无效 只允许重新登录一次 登录成功 还原
              that.globalData.isRead = true;
              that.globalData.loginTime = 0;
              console.log('登录成功');
              return fn(e)
             }
        })
      }
    })
  }

onLoad:

   onLaunch: function () {
    //调用API从本地缓存中获取数据
    var rd_session = wx.getStorageSync('rd_session')
    var that = this
    //获取不到session 进行登录
    if (rd_session == null || rd_session == '') {
      that.onLogin(that.init());
    } else {
      wx.checkSession({
        success: function () {
          //session 未过期,init进行一些初始化操作。
          that.init();
        },
        //获取到session已过期 进行登录
        fail: function () {
          that.onLogin(that.init());
        }
      })
    }
  }

后面的与服务器的交互就靠这个session了 如果session无效或失效,就调用onLoad重新 登录 再次执行。

猜你喜欢

转载自blog.csdn.net/qq_28400747/article/details/73692557