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
  • 相关阅读:
    跨域
    reactV16理解
    css动画总结
    h5与app交互
    跨域
    ant-design如果按需加载组件
    移动端300ms延迟原理,穿透、遮罩层滑动导致下面滑动总结
    监听数组的变化
    使用VS Code调试Node.js
    React-typescript-antd 常见问题
  • 原文地址:https://www.cnblogs.com/CyLee/p/5472643.html
Copyright © 2011-2022 走看看