public static async Task <string> GetWechateToken() { string token = string.Empty; ReturnResult <WechatTokenModel> resultToken = await Service.GetWechatToken(); //如果为空,则通过微信接口获取Token,保存本地,同时返回 if (resultToken.data == null || string.IsNullOrEmpty(resultToken.data.ID)) { string tokenJson = WechatHttpClientUtil.dooGet( string.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", appid, secret)); JObject jo = (JObject)JsonConvert.DeserializeObject(tokenJson); token = jo["access_token"].ToString(); WechatTokenModel saveToken = new WechatTokenModel { ID = Guid.NewGuid().ToString(), CreateTime = DateTime.Now, updatetime = DateTime.Now, token = token, }; await Service.UpdateWechatToken(saveToken);//此处可以开线程执行 } else { token = resultToken.data.token; } return(token); }
public static string GetUserOpenId() { string openid = string.Empty; openid = WechatHttpClientUtil.dooGet( string.Format("https://api.weixin.qq.com/cgi-bin/user/get?access_token={0}&next_openid=", AccessTokenContainer.TryGetAccessToken(appid, secret))); return(openid); }