最近做乙個微信小程式需用到微信運動資料,根據文件,我寫了乙個demo;先總結一下步驟,流程簡單如下:
1、呼叫小程式api:wx.login獲取code和sessionkey;
2、呼叫小程式api: wx.getwerundata獲取微信運動資料(加密的);
3、解密步驟2的資料;
我後台用c#的,其實其他語言原理一樣,只有解密資料乙個核心方法;
前端(小程式的 js)
const util = require('../../utils/util.js')
page(,
/*** 生命週期函式--監聽頁面載入
*/onload: function (options) ,
success: function (ressession) ,
method: 'get', // options, get, head, post, put, delete, trace, connect
// header: {}, // 設定請求的 header
success: function (resdecrypt)
that.setdata();
}
}});}})
}})
} else
}});
},})
以上的http://localhost:9281是本地環境啦
後端(c# .net mvc)
//控制器
public class wxappcontroller : basecontroller
}return writingfailed("登入失敗");
}///
/// 解密,對應上面的http://localhost:9281/wxapp/decrypt
///
///
public actionresult decrypt()
return writingfailed("解密失敗");
}//wxapphelper的getsession
/// aes解密
///
//////
//////
public static string aes_decrypt(string encrypteddatastr, string key, string iv)}}
return result;
}//實體
public class appsession
ok啦,就是這麼簡單,我們看看執行結果:
微信小程式開發 獲取微信運動步數 C 解密步數
我後台用c 的,其實其他語言原理一樣,只有解密資料乙個核心方法 加密資料解密演算法 介面如果涉及敏感資料 如wx.getuserinfo當中的 openid 和unionid 介面的明文內容將不包含這些敏感資料。開發者如需要獲取敏感資料,需要對介面返回的加密資料 encrypteddata 進行對稱...
微信小程式微信運動步數處理
第一步,獲取session key,用來解密必須用到的 這裡,獲取session key就不敘述了,跟獲取openid的步驟是一樣的,詳見 這裡獲取這兩個資料,是呼叫wx.getwerundata object 這個介面獲取的,具體一些許可權的判斷和處理,詳見 到了這裡,請詳見 體驗版具體 正式版需...
微信小程式開發 微信繫結
官方api提供的request請求的url wx.login 請求引數 傳送請求 解析相應內容 換成json物件 jsonobject json jsonobject.fromobject sr 獲取會話金鑰 session key string session key json.get sessi...