示例#1
0
 dynamic ApiPostString(string url, string postData, int tryCount = 0)
 {
     try
     {
         var json   = _winXinService.PostWebString(GetApiUrl(url), postData);
         var result = Json.Decode(json);
         if (result.errcode != null && result.errcode != 0)
         {
             throw new WXResultException(result.errcode, result.errmsg);
         }
         return(result);
     }
     catch (WXResultException ex)
     {
         if (ex.Code == -1 && tryCount < TryCount)//系统繁忙
         {
             Thread.Sleep(SleepTime);
             return(ApiPostString(url, postData, tryCount++));
         }
         else if (ex.Code == 42001)
         {
             RefreshToken();
             return(ApiPostString(url, postData));
         }
         _orchardServices.Notifier.Error(T("错误信息:[{0}]{1}.", ex.Code, ex.Message));
     }
     catch (Exception ex)
     {
         _orchardServices.Notifier.Error(T("错误信息:{0}.", ex.Message));
     }
     return(null);
 }