您现在的位置: 微信小程序 > 微信小程序开发 > 教程 >

微信小程序获得用户信息、session、openid和unionid的thinkphp代码

来源:微信小程序 编辑:Yiyongtong.com 发布时间:2018-02-10 11:45热度:


我用thinkphp写了个公共类Common供参考

前端代码:

 

  1. //刷新用户信息
    function updateUserInfo(){
    wx.login({
    success: function(loginRes) {
    if (loginRes.code) {
    console.log('获取code成功!code:' + loginRes.code);
    wx.getUserInfo({
    success: function (userinfoRes) {
    console.log('获得用户信息成功!userInfo:');
    console.log(userinfoRes);
    var userInfoStr=JSON.stringify(userinfoRes);
    wx.request({
    url: 'https://www.yourhost.com/weixin/Common/getSession',
    data: {
    code: loginRes.code,
    userInfo:userInfoStr
    },
    header: {
    'content-type': 'application/x-www-form-urlencoded'
    },
    method:'POST',
    success: function(res) {
    //缓存session及userInfo
    //var obj = JSON.parse(res.data);
    if(res.data.error==0){
    console.log('刷新缓存成功!');
    wx.setStorage({
    key:"session",
    data:{
    session:res.data.session,
    userInfo:userinfoRes.userInfo,
    expires:res.data.expires //超时时间戳
    },
    success:function(){
    console.log('写入缓存成功!');
    },
    fail:function(){
    console.log('写入缓存失败!');
    }
    })
    }else{
    console.log('刷新缓存失败!');
    console.log(res);
    }
    
    },
    fail:function(res){
    console.log('刷新session失败!');
    console.log(res)
    }
    });
    },
    fail:function(res){
    console.log('获取用户信息失败!' + res)
    }
    });
    }else {
    console.log('获取用户登录态失败!' + res.errMsg)
    }
    }
    });
    }

后端代码:

 

  1. <?php
    /*
    * 小程序公共类
    */
    namespace Weixin\Controller;