uniapp获取微信运动步数

wx.getWeRunData接口文档 

 先调用login换取code,然后调用wx.getWeRunData,在成功的回调中调用后端同学的接口,传code,iv,encryptedData,其实后端不需要code,需要sessionkey,但是sessionkey需要通过code和code2session服务端接口取获取,就可以换取微信运动步数了,这里要注意的是微信步数的timestamp字段单位是秒!!!!,如果用Date对象操作的时候需要乘1000!!!

	uni.login({
					provider: 'weixin',
					success: async function(e) {
						// console.log("login参数", e);
						if (e.errMsg == "login:ok") {
							wx.getWeRunData({
								async success(result) {
									// console.log("微信运动成功参数", result);
									var data = {
										code: e.code,
										iv: result.iv,
										encryptedData: result.encryptedData,
										userId: state.userInfo.userId
									}
									try {
										let res = await step(data)
										if (res.state === 1) {
											commit("set_wxStepNum", res.content)
										}
										resolve(res);
									} catch (e) {
										reject(e);
										uni.$u.toast(`${e}`)
									}
								}
							})
						} else {
							uni.showToast({
								title: "获取微信步数失败",
								icon: 'none',
								duration: 2500
							})
						}
					},
					fail: () => { //uni.login 失败的回调
						uni.showToast({
							title: '授权已取消',
							icon: 'error',
							mask: true,
						});
					}
				})

猜你喜欢

转载自blog.csdn.net/m0_57033755/article/details/131813848