private void InitRequestDebug(RequestBaseBase request) { AddDebug(string.Format("Calling API {0} / {1}", request.Controller, request.Method)); AddDebug(string.Format("Requires TOKEN? {0}", request.RequiresApiToken)); AddDebug(string.Format("Requires SERVICEID? {0}", request.RequiresServiceId)); AddDebug("-----"); AddDebug("Initializing..."); AddDebug(string.Format("URL : {0}", request.Url)); AddDebug(string.Format("PARAMS : {0}", request.ToQueryString(APISettings.ServiceID))); AddDebug("-----"); }
public async Task <string> PerformRequestAsync(RequestBaseBase request, CancellationToken cancellationToken = default) { if (Settings.ProxyConfigurationInjector != null) { throw new NotImplementedException($"PerformRequestAsync not implemented yet with {nameof(Settings.ProxyConfigurationInjector)}"); } if (request.RequiresApiToken) { request.ApiToken = Settings.ApiToken; } if (request.RequiresServiceId) { request.ServiceId = Settings.ServiceID; } var httpRequestContent = new FormUrlEncodedContent(request.GetParametersDictionary(Settings.ServiceID)); httpRequestContent.Headers.ContentType.MediaType = WWWUrlContentType; using var httpRequest = new HttpRequestMessage(HttpMethod.Post, $"{Settings.Endpoint}/{request.Url}") { Content = httpRequestContent, }; httpRequest.Headers.Accept.Clear(); httpRequest.Headers.Accept.ParseAdd(ApplicationJsonContentType); httpRequest.Headers.UserAgent.Add(new ProductInfoHeaderValue("PAYNL_SDK_DOTNET_CORE", ClientVersion)); var response = await InternalHttpClient.SendAsync(httpRequest, cancellationToken) .ConfigureAwait(false); var responseContent = await response.Content.ReadAsStringAsync().ConfigureAwait(false); request.RawResponse = responseContent; return(responseContent); }
private void DebugRawResponse(RequestBaseBase request) { AddDebug("RAW Result from PAYNL"); AddDebug(request.RawResponse); }