微信小程序中,由于有些数据比较隐私(openid,手机号等),所以你请求微信对应的接口返回的数据是加密的,这就需要解密了,具体可以看https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getPhoneNumber.html
而微信又没有提供c#demo,所以在网上找了一下,总结出来:
首先要解密数据,需要几个参数:①sessionKey ②encryptedData ③iv
sessionKey:在js页面调用wx.login方法返回code然后通过后端请求
https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code
就会得到了。
encryptedData:微信返回的解密数据
iv:加密算法的初始向量
/// <summary>
/// WXBizDataCrypt 的摘要说明
/// 微信小程序解密类
/// </summary>
public class WXBizDataCrypt
{
private string _appid;
private