public static string GetTicket() { string accessToken = WechatApi.GetAccessToken(); string url1 = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + accessToken + "&type=jsapi"; string responseInfo = WechatApi.HttpGet(url1); WechatTicketResponse response = JsonConvert.DeserializeObject <WechatTicketResponse>(responseInfo); if (response.errcode == 42001) { WechatApi.RefreshAccessToken(accessToken); accessToken = WechatApi.GetAccessToken(); url1 = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + accessToken + "&type=jsapi"; responseInfo = WechatApi.HttpGet(url1); WechatTicketResponse responseLast = JsonConvert.DeserializeObject <WechatTicketResponse>(responseInfo); return(responseLast.ticket); } else { string ticket = response.ticket; return(ticket); } }
/// <summary> /// 通过 GET 方式调用微信 API /// </summary> /// <typeparam name="T"></typeparam> /// <param name="rawUrl"></param> /// <returns></returns> private static T GetWechatApi <T>(string rawUrl) where T : WechatApiResponseMessage { string responseBody = WechatApi.HttpGet(rawUrl); return(JsonConvert.DeserializeObject <T>(responseBody)); }