示例#1
0
        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);
            }
        }
示例#2
0
        /// <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));
        }