ajax 获取openid,纯前端获取当前用户的openid(微信小程序)

【实例简介】请将代码中的appId以及appsecret换成自己的,代码仅用于调试,请勿正式用途,否则会暴露appsecret

【实例截图】

【核心代码】

App({

globalData: {

appid: '1wqas2342dasaqwe2323424ac23qwe',//appid需自己提供,此处的appid我随机编写

secret: 'e0dassdadef2424234209bwqqweqw123ccqwa',//secret需自己提供,此处的secret我随机编写

},

onLaunch: function () {

var that = this

var user = wx.getStorageSync('user') || {};

var userInfo = wx.getStorageSync('userInfo') || {};

if ((!user.openid || (user.expires_in || Date.now()) < (Date.now() 600)) && (!userInfo.nickName)) {

wx.login({

success: function (res) {

if (res.code) {

wx.getUserInfo({

success: function (res) {

var objz = {};

objz.avatarUrl = res.userInfo.avatarUrl;

objz.nickName = res.userInfo.nickName;

//console.log(objz);

wx.setStorageSync('userInfo', objz);//存储userInfo

}

});

var d = that.globalData;//这里存储了appid、secret、token串

var l = 'https://api.weixin.qq.com/sns/jscode2session?appid=' d.appid '&secret=' d.secret '&js_code=' res.code '&grant_type=authorization_code';

wx.request({

url: l,

data: {},

method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT

// header: {}, // 设置请求的 header

success: function (res) {

var obj = {};

obj.openid = res.data.openid;

obj.expires_in = Date.now() res.data.expires_in;

console.log(obj);

wx.setStorageSync('user', obj);//存储openid

}

});

} else {

console.log('获取用户登录态失败!' res.errMsg)

}

}

});

}

},

})

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值