public override OauthToken.TokenData GetToken() { IDictionary <string, string> tokenParams = new Dictionary <string, string> { { "client_id", clientId }, { "client_secret", clientSecret }, { "authorize_type", "authorization_code" }, { "code", Code } }; DefaultHttpClient defaultHttpClient = new DefaultHttpClient(); string result = defaultHttpClient.Send(this.GetTokenUrl(), tokenParams, null, null); Console.WriteLine("t result *******************" + result); OauthToken oAuthToken = JsonConvert.DeserializeObject <OauthToken>(result); if (oAuthToken.Data == null) { TokenData tokenData = new TokenData { Message = result }; return(tokenData); } string data = oAuthToken.Data.ToString(); TokenData toKenData = JsonConvert.DeserializeObject <TokenData>(data); return(toKenData); }
private TokenData GetNewTokenData() { TokenData tokenData = null; IDictionary <string, object> tokenParams = new Dictionary <string, object> { { "client_id", _ClientId }, { "client_secret", _ClientSecret }, { "authorize_type", "silent" }, { "grant_id", _GrantId } }; DefaultHttpClient defaultHttpClient = new DefaultHttpClient(); string result = defaultHttpClient.Send(this.GetTokenUrl(), tokenParams, null, null); OauthToken oAuthToken = JsonConvert.DeserializeObject <OauthToken>(result); if (oAuthToken.Data == null) { tokenData = new TokenData { Message = result }; return(tokenData); } string data = oAuthToken.Data.ToString(); tokenData = JsonConvert.DeserializeObject <TokenData>(data); // Token添加缓存 if (cache.Contains(this._ClientId + "_" + this._GrantId)) { cache.Remove(this._ClientId + "_" + this._GrantId); } cache.Add(this._ClientId + "_" + this._GrantId, tokenData, tokenData.ExpiresTime.AddMinutes(-5)); return(tokenData); }
string IYouZanClient.Invoke(IAPI api, IAuth auth, IDictionary <string, string> headers, List <KeyValuePair <string, string> > files) { { string url = null; if (api != null) { OAuthEnum oAuth = api.GetOAuthType(); switch (oAuth) { case OAuthEnum.TOKEN: url = BuildUrl(api, auth); break; case OAuthEnum.SIGN: break; case OAuthEnum.DIRECT: url = BuildUrl(api, auth); break; } var method = api.GetHttpMethod(); IApiParams apiParams = api.GetAPIParams(); IDictionary <string, string> requestParams = apiParams.ToParams(); IDictionary <string, string> header = api.GetHeaders(); string result = defaultHttpClient.Send(url, requestParams, header, files); return(result); } return(null); } }
string IYouZanClient.Invoke(IAPI api, IAuth auth, IDictionary <string, string> headers, List <KeyValuePair <string, string> > files) { string url = null; if (api != null) { OAuthEnum oAuth = api.GetOAuthType(); switch (oAuth) { case OAuthEnum.TOKEN: url = BuildUrl(api, auth); break; case OAuthEnum.SIGN: break; case OAuthEnum.DIRECT: url = BuildUrl(api, auth); break; } var method = api.GetHttpMethod(); IApiParams apiParams = api.GetAPIParams(); IDictionary <string, object> requestParams = apiParams.ToParams(); IDictionary <string, string> header = api.GetHeaders(); string result = defaultHttpClient.Send(url, requestParams, header, files); if (YouZanConfig.SaveApiLogToDB) { YouZanLogger log = new YouZanLogger { ApiName = api.GetName(), ApiVersion = api.GetVersion(), ApiMethod = api.GetHttpMethod(), AuthType = oAuth.ToString(), RequestUrl = url, PostData = JsonConvert.SerializeObject(requestParams), Header = JsonConvert.SerializeObject(header), ResponseData = result, ClientId = api.GetClientId(), GrantId = api.GetGrantId() }; Task.Run(log.Save); } return(result); } return(null); }
internal TokenData GetNewTokenData() { TokenData tokenData = null; IDictionary <string, object> tokenParams = new ConcurrentDictionary <string, object>(); tokenParams.Add("client_id", _ClientId); tokenParams.Add("client_secret", _ClientSecret); tokenParams.Add("authorize_type", "silent"); tokenParams.Add("grant_id", _GrantId); DefaultHttpClient defaultHttpClient = new DefaultHttpClient(); string result = defaultHttpClient.Send(this.GetTokenUrl(), tokenParams, null, null); OauthToken oAuthToken = JsonConvert.DeserializeObject <OauthToken>(result); if (oAuthToken.Data == null) { tokenData = new TokenData { Message = result }; return(tokenData); } string data = oAuthToken.Data.ToString(); tokenData = JsonConvert.DeserializeObject <TokenData>(data); // Token添加缓存 if (!YouZanConfig.SaveAccessTokenToDB) { if (cache.Contains(this._CacheKey)) { cache.Remove(this._CacheKey); } cache.Add(this._CacheKey, tokenData, tokenData.ExpiresTime.AddMinutes(-5)); } return(tokenData); }