zoukankan      html  css  js  c++  java
  • C#

    使用static来定义变量和过期时间

      //===================== 初始化静态数据 ==========================
            #region 
    
            private static DateTime TokenExpTime = DateTime.Now.AddDays(-5);    //Access_Token过期时间
    
            private static string Access_Token = "";   //微信接口的通行证
    
            #endregion

    实战:

      /// <summary>
            ///   //获取access_token ,但是会过期,时间为7200秒。经常用又会被限制,所以得使用静态存储
            /// </summary>
            /// <returns></returns>
            public String Get_access_token()
            #region
            {
                DateTime nowtime = DateTime.Now;
    
                if (nowtime > TokenExpTime)
                {              
                    HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create("https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" + this.CorpID + "&corpsecret=" + this.Secret);
                    webRequest.Method = "GET";
                    HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
                    StreamReader sr = new StreamReader(webResponse.GetResponseStream(), Encoding.UTF8);
                    
                    string json = sr.ReadToEnd();
                    JsonData data = JsonMapper.ToObject(json);
                    if (data["access_token"] == null)
                    {
                        log.WriteLog("获取access_token出错,错误信息为:" + json);
                        Access_Token = "";
                    }
    
                    Access_Token = data["access_token"].ToString();
    
                    TokenExpTime = nowtime.AddMinutes(90);//重新设置过期时间
                }
    
                return Access_Token;
            }
            #endregion
  • 相关阅读:
    poj 1010
    poj 1060
    poj 1001
    POJ 2769
    POJ 2559
    poj 2403
    POJ 1088
    设置全屏与退出全屏
    iframe 父子页面方法调用
    Web 前端面试小知识
  • 原文地址:https://www.cnblogs.com/CyLee/p/5472643.html
Copyright © 2011-2022 走看看