Exemplo n.º 1
0
        /// <summary>
        /// 得到access_token
        /// </summary>
        /// <returns></returns>
        public static string GetAccessToken()
        {
            //判断当前cookie是否存在
            HttpCookie accessTokenCookie = HttpContext.Current.Request.Cookies["access_token"];

            if (accessTokenCookie == null || string.IsNullOrEmpty(accessTokenCookie.Value))
            {
                AccessTokenJson token = GetWeChatToken();
                if (token != null)
                {
                    accessTokenCookie         = new HttpCookie("access_token", token.access_token);
                    accessTokenCookie.Expires = DateTime.Now.AddSeconds(token.expires_in);
                    HttpContext.Current.Response.Cookies.Set(accessTokenCookie);
                    return(token.access_token);
                }
                else
                {
                    return("");
                }
            }
            else
            {
                return(accessTokenCookie.Value);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// 请求微信服务器得到access_token
 /// </summary>
 /// <returns></returns>
 private static AccessTokenJson GetWeChatToken()
 {
     try
     {
         string          appId  = ConfigurationManager.AppSettings["appid"];
         string          secret = ConfigurationManager.AppSettings["appsecret"];
         string          url    = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appId + "&secret=" + secret + "";
         string          result = GetRespone(url);
         AccessTokenJson json   = result.DeserializeJson <AccessTokenJson>();
         if (json == null)
         {
             return(null);
         }
         else
         {
             return(json);
         }
     }
     catch (Exception ex)
     {
         return(null);
     }
 }