Project files for the Acumatica Import for United Rentals
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

60 lignes
2.2 KiB

  1. using RestSharp;
  2. using System;
  3. using System.IO;
  4. using uri_import.FClasses;
  5. namespace uri_import.AClasses
  6. {
  7. public static class RequestLogger
  8. {
  9. private static string RequestsLogPath = Path.Combine(FileActions.ExecFile, "RequestsLog.txt");
  10. /// <summary>
  11. /// Logs response to RequestsLog.txt file.
  12. /// </summary>
  13. public static void LogResponse(RestRequest request, RestResponse response, RestClient restClient)
  14. {
  15. StreamWriter writer = new StreamWriter(RequestsLogPath, true);
  16. writer.WriteLine(DateTime.Now.ToString());
  17. writer.WriteLine("Response");
  18. writer.WriteLine("\tStatus code: " + response.StatusCode);
  19. writer.WriteLine("\tContent: " + response.Content);
  20. writer.WriteLine("-----------------------------------------");
  21. writer.WriteLine();
  22. writer.Flush();
  23. writer.Close();
  24. }
  25. /// <summary>
  26. /// Logs request to RequestsLog.txt file.
  27. /// </summary>
  28. public static void LogRequest(RestRequest request, RestClient restClient)
  29. {
  30. StreamWriter writer = new StreamWriter(RequestsLogPath, true);
  31. writer.WriteLine(DateTime.Now.ToString());
  32. writer.WriteLine("Request");
  33. writer.WriteLine("\tMethod: " + request.Method);
  34. string parameters = "";
  35. string body = "";
  36. foreach (var parameter in request.Parameters)
  37. {
  38. if (parameter.Type == ParameterType.QueryString)
  39. {
  40. parameters += String.IsNullOrEmpty(parameters) ? "?" : "&";
  41. parameters += parameter.Name + "=" + parameter.Value;
  42. }
  43. if (parameter.Type == ParameterType.RequestBody)
  44. body += parameter.Value;
  45. }
  46. writer.WriteLine("\tURL: " + restClient.BuildUri(request) + parameters);
  47. if (!String.IsNullOrEmpty(body))
  48. writer.WriteLine("\tBody: " + body);
  49. writer.WriteLine("-----------------------------------------");
  50. writer.WriteLine();
  51. writer.Flush();
  52. writer.Close();
  53. }
  54. }
  55. }