配置。请参看上篇文章。这里直接上代码

PHP 代码:

//获取微信运动数据:

public functiontest(){$code = input("code");$signature = input("signature"); //数据签名

$rawDate = $_GET['rawData']; //记住不应该用TP中的input方法,会过滤掉必要的数据

$encryptedData = $_GET['encryptedData']; //微信运动数据

$iv = $_GET['iv']; //初始向量

$nickname = input("nickname"); //用户昵称

$avatarurl = input("avatarurl"); //用户头像

if(empty($code) || empty($signature) || empty($rawDate) ||empty($encryptedData) || empty($iv) || empty($nickname) || empty($avatarurl) ){return json(['code'=>'2','message'=>"参数错误","result"=>null]);

}//开发者使用登陆凭证 code 获取 session_key 和 openid

$APPID = config::get("config.wx_appid");$AppSecret = config::get("config.wx_appsecret");$wx_request_url = config::get("wechat.wx_request_url");$param = array('appid' => $APPID,

'secret' => $AppSecret,

'js_code' => $code,

'grant_type' => 'authorization_code');//一个使用curl实现的get方法请求

$arr = http_send($wx_request_url, $param, 'post');$arr = json_decode($arr,true);if(isset($arr['errcode']) && !empty($arr['errcode'])){return json(['code'=>'2','message'=>$arr['errmsg'],"result"=>null]);

}$openid = $arr['openid'];$session_key = $arr['session_key'];//数据签名校验

$signature2 = sha1($rawDate.$session_key);if ($signature != $signature2) {$msg = "shibai 1";return json(['code'=>'2','message'=>'获取失败',"result"=>$msg]);

}//开发者如需要获取敏感数据,需要对接口返回的加密数据( encryptedData )进行对称解密

include_once (EXTEND_PATH. 'Wxdev/wxBizDataCrypt.php');$pc = new \WXBizDataCrypt($APPID, $session_key);$errCode = $pc->decryptData($encryptedData, $iv, $data); //其中$data包含用户的所有数据

if ($errCode != 0) {return json(['code'=>'2','message'=>'获取失败',"result"=>null]);

}if(empty($data)){return json(['code'=>'2','message'=>'暂无数据',"result"=>null]);

}$data = json_decode($data,true);$list = $data["stepInfoList"];foreach ($list as $key => $value) {$list[$key]['time'] = date("Y-m-d H:i:s",$value['timestamp']);

}return json(['code'=>'1','message'=>'获取成功',"result"=>$list]);

}

小程序代码:

//获取微信运动

wx.login({

success: loginres=>{

let code = loginres.code;

if(code){

wx.getWeRunData({

success: runres => {

let encryptedData = runres.encryptedData

let iv = runres.iv

wx.getUserInfo({

success: infores => {

let userinfo = infores.userInfo

let signature = infores.signature;

let rawData = infores.rawData;

wx.request({

url: 'https://www.test.com/wechat/index/test',

data: {

"code": code,

"signature": signature,

"rawData": rawData,

"nickname": userinfo.nickName,

"avatarurl": userinfo.avatarUrl,

'iv': iv,

'encryptedData': encryptedData

},

header:{

"content-type" : "application/x-www-form-urlencoded"

},

success: function (info) {

console.log(info);

},

fail:function(res){

console.log(res);

},

complete:function(res){

console.log(res);

}

})//request结束

}

}) //userinfo结束

}

})//微信运动结束

}else{

that.alert("获取用户登陆失败" + loginres.errMsg)

}

}

})

授权代码:

// 获取用户信息

wx.getSetting({

success: res => {

var code = res.code; //获取code

//访问用户权限

if (res.authSetting['scope.userInfo']) {

// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框

}

//访问微信运动

if (!res.authSetting['scope.werun']) {

wx.authorize({

scope: 'scope.werun',

success() {

// 用户已经同意小程序使用微信运动,后续调用 wx.getWeRunData 接口不会弹窗询问

}

})

}

php 小程序 运动步数_【小程序+ thinkphp5】 获取微信运动数据相关推荐

  1. php 小程序 运动步数_小程序同步微信步数 - xiangqian1的个人空间 - OSCHINA - 中文开源技术交流社区...

    小程序获取微信运动步数,咱们看文档:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/werun/wx.getWeRunDat ...

  2. 两个苹果手机共享步数_实测:iPhone上“微信运动”步数可以作弊

    几个月前,微信开通"微信运动"公众号,iPhone手机关注该公众号即可看到自己每天走的步数,还能和好友PK. 不过这个功能也害苦了不少网友,有的建了微信群,步数最少的人要发红包,原 ...

  3. 微信小程序获取微信运动数据并解密

    官方API 官方API 步骤 1,APP端拉起微信小程序 2,小程序端获取微信运动数据 3,后台解密获取的微信运动数据 实现 1,APP端调起微信小程序 准备工作: 1)微信开放平台,微信公众平台注册 ...

  4. php 小程序 运动步数_【永久会员专享】运动步数宝换购小程序源码包更新【更新至V9.6.7】...

    源码介绍 步数换购小程序V9.6.9完整全开源源码包+小程序前端[包更新],优化重构首页邀请按钮.邀请头像显示的开关功能! 步数换购模块技术解决方案"3.0.0版本"已上线--完成 ...

  5. ios11修改微信步数_小程序同步微信步数

    文章正文 小程序获取微信运动步数,咱们看文档:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/werun/wx.getWeR ...

  6. 获取this_小程序获取微信运动步数并集成echarts报表显示

    需求 现在运动计步非常的火,大家常用的计步工具一般有keep.咕咚.微信运动和其他移动设备等,本文是基于微信小程序获取用户的微信运动数据并可视化呈现出来. 先看一下最终实现效果: 微信运动规则 在开发 ...

  7. 微信运动步数:小程序+Java后端,源码可下载

    微信运动步数:小程序+Java后端 更多资源:www.jeeweixin.com 功能说明: 1.获取和展示用户的微信运动步数,计算卡路里: 2.用户打开小程序即可实现步数打卡入库: 3.通过日历展示 ...

  8. 小程序获取微信运动步数并集成echarts报表显示

    需求 现在运动计步非常的火,大家常用的计步工具一般有keep.咕咚.微信运动和其他移动设备等,本文是基于微信小程序获取用户的微信运动数据并可视化呈现出来. 先看一下最终实现效果: 微信运动规则 在开发 ...

  9. t微信小程序开发-获取微信运动步数

    官方API https://mp.weixin.qq.com/debug/wxadoc/dev/api/we-run.html#wxgetwerundataobject 步骤 最近做一个微信小程序需用 ...

最新文章

  1. 【Axure原型图】—— 4. Tab Control(选项卡)
  2. Asp.net core使用IIS在windows上进行托管
  3. JS中 let 和var的区别
  4. 【python图像处理】两幅图像的合成一幅图像(blending two images)
  5. Android开发之Android studio自动签名打包release 版本的正确姿势(完整版) | 文末尾附有Google官方签名教程
  6. Strategy(策略)--对象行为型模式
  7. 阿里云视频点播解决方案使用教程
  8. 前端笔记-thymeleaf获取及回显select数据(combox)
  9. bootstrap,datetimepicker日期时间选择器-限制时间段,以及中文显示问题
  10. js整理 03-18
  11. VSCode Python Tutorial
  12. 曾经的那些绝世电脑高手们
  13. matlab支持向量回归,支持向量回归 MATLAB代码
  14. Simscape/Fluids液压元件 -- Pressure Reducing Valve(减压阀)
  15. 小型产生式系统——昆虫识别
  16. 2022.7-8文献笔记
  17. PHP基础知识系统复习
  18. 为什么.TM明明不便宜,却还是备受业界大佬们青睐?
  19. hadoop之大数据生态系统的前世今生
  20. 最新 | Windows和信创终端都能顺滑使用宁盾802.1X账密认证了

热门文章

  1. 计算机的组成及其功能
  2. SAP可配置(VC)的特性相关性简介
  3. 什么是令牌桶(Token Bucket)?
  4. Win10 外接显示屏字体模糊
  5. Suzy找到实习了吗Day 17 | 二叉树进行中:110. 平衡二叉树,257 二叉树的所有路径,404. 左叶子之和
  6. 2020 China Collegiate Programming Contest Weihai Site H.Message Bomb
  7. easyexcel处理合并单元格数据
  8. 【阅读器】caj格式及其转换为PDF格式
  9. 蚂蚁链开发者实验室:开放全栈工具助力开发者低代码开发
  10. 蔡丹红老师刁酒集团《基层管理人员综合能力提升培训班》企业内训开讲