摘要:本文将带你了解微信小程序开发之--获取微信运动步数的实例代码,希望本文对大家学微信有所帮助
本文将带你了解微信小程序开发之--获取微信运动步数的实例代码,希望本文对大家学微信有所帮助
微信小程序的微信运动每日步数获取
第一步,获取session_key,用来解密必须用到的
①这里,获取session_key就不叙述了,跟获取openid的步骤是一样的,
注意:这里要注意的是,在体验版中,使用体验版的appid和secret,微信小程序端是可以获取到seesion_key和openid的,而在上线的正式版本中,使用正式的appid和secret,则会出现错误,具体原因,详见上面一个链接
第二步,获取encryptedData和iv,就是一些,微信步数加密后的数据
①这里获取这两个数据,是调用wx.getWeRunData(OBJECT)这个接口获取的,具体一些权限的判断和处理,详见:
第三步,根据appid,session_key,iv来解密encryptedData,则会获取到解密之后的数据
使用CryptoJS解决微信小程序用户信息解密
体验版具体代码(正式版需在服务器端处理数据):
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var that = this;
wx.login({
success: function(res){
var appid = "";
var secret = "";
if(res.code){
wx.request({
url: 'https://api.weixin.qq.com/sns/jscode2session?appid=' + appid + '&secret=' + secret + '&js_code=' + res.code + '&grant_type=authorization_code',
header: {
'content-type': 'json'
},
success: function(res){
var session_key = res.data.session_key;
console.log(session_key);
that.getData(appid,session_key);
}
})
}
}
})
},
//获取encryptedData(没有解密的步数)和iv(加密算法的初始向量)
getData: function (appid,session_key) {
wx.getSetting({
success: function (res) {
console.log(res);
if (!res.authSetting['scope.werun']) {
wx.showModal({
title: '提示',
content: '获取微信运动步数,需要开启计步权限',
success: function (res) {
if (res.confirm) {
//跳转去设置
wx.openSetting({
success: function (res) {
}
})
} else {
//不设置
}
}
})
} else {
wx.getWeRunData({
success: function (res) {
console.log(res);
console.log("appid:" + appid + "session_key:" + session_key + "encryptedData:" + res.encryptedData + "iv:" + res.iv);
var encryptedData = res.encryptedData;
var iv = res.iv;
//使用解密工具,链接地址:
//https://codeload.github.com/gwjjeff/cryptojs/zip/master
var pc = new WXBizDataCrypt(appid, session_key);
console.log(pc);
var data = pc.decryptData(encryptedData, iv)
console.log(data)
},
fail: function (res) {
wx.showModal({
title: '提示',
content: '开发者未开通微信运动,请关注“微信运动”公众号后重试',
showCancel: false,
confirmText: '知道了'
})
}
})
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之微信频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号