Beispiel #1
0
        public string GetAccessToken(string appId, string appSecret, bool isReload = false)
        {
            //用于测试配置
            string wxAccessToken = System.Configuration.ConfigurationManager.AppSettings["custom:WxTestAccessToken"];

            if (wxAccessToken != null)
            {
                return(wxAccessToken);
            }


            string key   = string.Format("Wx_AppId_{0}_AccessToken", appId);
            var    redis = new RedisClient <string>();

            if (isReload)
            {
                redis.KRemove(key);
            }

            var accessToken = redis.KGetString(key);


            if (accessToken == null)
            {
                LogUtil.Info(string.Format("获取微信AccessToken,key:{0},已过期,重新获取", key));

                WxApi c = new WxApi();

                WxApiAccessToken apiAccessToken = new WxApiAccessToken("client_credential", appId, appSecret);

                var apiAccessTokenResult = c.DoGet(apiAccessToken);

                if (string.IsNullOrEmpty(apiAccessTokenResult.access_token))
                {
                    LogUtil.Info(string.Format("获取微信AccessToken,key:{0},已过期,Api重新获取失败", key));
                }
                else
                {
                    LogUtil.Info(string.Format("获取微信AccessToken,key:{0},value:{1},已过期,重新获取成功", key, apiAccessTokenResult.access_token));

                    accessToken = apiAccessTokenResult.access_token;

                    redis.KSet(key, accessToken, new TimeSpan(0, 30, 0));
                }
            }
            else
            {
                LogUtil.Info(string.Format("获取微信AccessToken,key:{0},value:{1}", key, accessToken));
            }

            return(accessToken);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            //1Vi0WyupqfNSpUx22KCUYVVIPHQaa2Dnnjt65IKoLPKOIaoDwwBQZrlnal71nPC1

            WxApi            c = new WxApi();
            WxApiAccessToken apiAccessToken = new WxApiAccessToken("client_credential", "wx60443bbfd97f6aa5", "dfd062f723c38519092dfd7646af2f76");
            var result = c.DoGet(apiAccessToken);



            WxApiUserInfoTest(result.access_token, "oUWrIjoJpzcbnwpcQ2IG4C1172To");
            WxApiMessageTemplateSendTest(result.access_token, "oUWrIjoJpzcbnwpcQ2IG4C1172To");
            //  WxApiMediaUploadNewsTest(result.access_token);
            // WxApiMessageMassSendText(result.access_token,"1Vi0WyupqfNSpUx22KCUYVVIPHQaa2Dnnjt65IKoLPKOIaoDwwBQZrlnal71nPC1");

            //postData = "{\"touser\":[\"oUWrIjoJpzcbnwpcQ2IG4C1172To\",\"oUWrIjoJpzcbnwpcQ2IG4C1172To\"], \"mpnews\":{\"media_id\":\"" + result3.media_id + "\" },\"msgtype\":\"mpnews\"}";

            //WebApiMessageMassSend messageMassSend = new WebApiMessageMassSend(result.access_token, WxPostDataType.Text, postData);

            //var result4 = c.DoPost(messageMassSend);
        }