Esempio n. 1
0
        /// <summary>
        /// Send http request.
        /// </summary>
        /// <param name="_httpRequestBundle">An ApiRequestBundle param.</param>
        /// <returns>HttpResponseBundle</returns>
        public async Task <HttpResponseBundle> sendRequest(ApiRequestBundle _httpRequestBundle)
        {
            HttpRequestMessage httpRequestMessage = getHttpRequestMessage(_httpRequestBundle);

            if (token != null)
            {
                if (token.isAuthenticated())
                {
                    token.addAuthToken(httpRequestMessage);
                }
            }
            onStartRequest?.Invoke();
            var response = new HttpResponseBundle(await client.getClient().SendAsync(httpRequestMessage).ConfigureAwait(false));

            if (response.getHttpResponseMessage().IsSuccessStatusCode)
            {
                onSuccessRequest?.Invoke(response);
                Console.WriteLine(response.getHttpResponseMessage().Content.ReadAsStringAsync());
                return(response);
            }
            onFailedRequest?.Invoke(response);
            return(new HttpResponseBundle(new HttpResponseMessage(response.getHttpResponseMessage().StatusCode)));
        }