public static RequestApiResult <WeixinCreateShortUrlResult> GetShortUrl(DomainContext domainContext, string longUrl) { string accessToken = domainContext.AccessToken; RequestApiResult <WeixinCreateShortUrlResult> result = ShortUrlApi.GetShortUrl(accessToken, longUrl); if (result.Success == false) { if (result.Retry) { if (result.ApiError.ErrorCode == 40001) { accessToken = AccessTokenGetter.Refresh(domainContext.AppId, accessToken); } result = ShortUrlApi.GetShortUrl(accessToken, longUrl); if (result.Success == false) { _log.Write("ShortUrlApi.GetShortUrl 失败", result.GetDetail(), TraceEventType.Warning); } } else { _log.Write("ShortUrlApi.GetShortUrl 失败", result.GetDetail(), TraceEventType.Warning); } } return(result); }
public T Api <T>(string name) where T : YunpianApi { YunpianApi api = null; switch (name) { case ShortUrlApi.ApiName: api = new ShortUrlApi(); break; case SignApi.ApiName: api = new SignApi(); break; case SmsApi.ApiName: api = new SmsApi(); break; case TplApi.ApiName: api = new TplApi(); break; case UserApi.ApiName: api = new UserApi(); break; case VideoSmsApi.ApiName: api = new VideoSmsApi(); break; case VoiceApi.ApiName: api = new VoiceApi(); break; } api?.Init(_clnt); return(api as T); }