Exemple #1
0
 protected internal static ApiResponse <T> GetApiResponse <T>(BaseClient.RequestEnvelope envelope, ICredentials credentials)
 {
     if (envelope.Exception != null)
     {
         ApiResponse <T> apiResponse = new ApiResponse <T>();
         apiResponse.StatusCode          = HttpStatusCode.InternalServerError;
         apiResponse.ReasonPhrase        = envelope.Exception.Message;
         apiResponse.Content             = envelope.Exception.ToString();
         apiResponse.IsSuccessStatusCode = false;
         return(apiResponse);
     }
     if (credentials != null)
     {
         envelope.Request.Credentials = credentials;
     }
     try
     {
         using (HttpWebResponse response = (HttpWebResponse)envelope.Request.GetResponse())
             return(BaseClient.GetApiResponse <T>(response));
     }
     catch (WebException ex)
     {
         using (HttpWebResponse response = (HttpWebResponse)ex.Response)
             return(BaseClient.GetApiResponse <T>(response));
     }
 }
Exemple #2
0
 internal static BaseClient.RequestEnvelope GetHttpWebRequest(Uri uri, HttpMethod method, HttpRequestHeaders headers, string bearerToken, byte[] content = null, string contentType = "application/json")
 {
     BaseClient.RequestEnvelope requestEnvelope = new BaseClient.RequestEnvelope()
     {
         Request = (HttpWebRequest)WebRequest.Create(uri)
     };
     requestEnvelope.Request.Method = method.Method;
     if (headers != null)
     {
         foreach (KeyValuePair <string, IEnumerable <string> > header in (HttpHeaders)headers)
         {
             requestEnvelope.Request.Headers.Add(header.Key, string.Join(",", header.Value));
         }
     }
     if (!string.IsNullOrWhiteSpace(bearerToken))
     {
         requestEnvelope.Request.Headers[HttpRequestHeader.Authorization] = string.Format("bearer {0}", (object)bearerToken);
     }
     if (content != null)
     {
         requestEnvelope.Request.ContentLength = (long)content.Length;
         requestEnvelope.Request.ContentType   = contentType;
         try
         {
             requestEnvelope.Request.GetRequestStream().Write(content, 0, content.Length);
         }
         catch (Exception ex)
         {
             requestEnvelope.Exception = ex;
         }
     }
     return(requestEnvelope);
 }
Exemple #3
0
 protected internal static ApiResponse GetApiResponse(BaseClient.RequestEnvelope envelope, ICredentials credentials)
 {
     return((ApiResponse)BaseClient.GetApiResponse <object>(envelope, credentials));
 }