/// <summary> /// 呼び出し /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url"></param> /// <param name="content"></param> /// <returns></returns> public virtual async Task <dynamic> Call <T>(string url) { try { HttpClient client = HttpClientManager.GetHttpClient(url, HttpClientManager.ClientAcceptType.Default, AuthenticationData); HttpResponseMessage response = await client.DeleteAsync(url); if (response.IsSuccessStatusCode) { // 結果データなし } else { // トークンエラーの場合情報更新 if (response.StatusCode == System.Net.HttpStatusCode.Unauthorized) { await ResetHttpClient(url, HttpClientManager.ClientAcceptType.Default); } // リトライ if (RetryCount < MAX_RETRY_COUNT) { RetryCount++; return(await Call <T>(url)); } } return(response.StatusCode); } catch (Exception) { throw; } }
/// <summary> /// 呼び出し /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url"></param> /// <param name="content"></param> /// <returns></returns> public virtual async Task <dynamic> Call <T>(string url, HttpContent content) { try { HttpClient client = HttpClientManager.GetHttpClient(url, HttpClientManager.ClientAcceptType.Default, AuthenticationData); HttpResponseMessage response = await client.PostAsync(url, content); if (response.IsSuccessStatusCode) { dynamic responseContent = await this.GetResponseData <T>(response); return(responseContent); } else { // トークンエラーの場合情報更新 if (response.StatusCode == System.Net.HttpStatusCode.Unauthorized) { await ResetHttpClient(url, HttpClientManager.ClientAcceptType.Default); } return(null); } } catch (Exception) { throw; } }
/// <summary> /// 呼び出し /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url"></param> /// <returns></returns> public override async Task <dynamic> Call <T>(string url) { try { HttpClient client = HttpClientManager.GetHttpClient(url, HttpClientManager.ClientAcceptType.Default, AuthenticationData); HttpResponseMessage response = await client.GetAsync(url); if (response.IsSuccessStatusCode) { var stream = await response.Content.ReadAsStreamAsync(); return(stream); } else { // トークンエラーの場合情報更新 if (response.StatusCode == System.Net.HttpStatusCode.Unauthorized) { await ResetHttpClient(url, HttpClientManager.ClientAcceptType.Default); } // リトライ if (RetryCount < MAX_RETRY_COUNT) { RetryCount++; return(await Call <T>(url)); } return(null); } } catch (Exception) { throw; } }