RestSharp impression raw demande et en-têtes de réponse

Je suis en utilisant RestSharp de faire des appels à un service web. Tout est bien mais je me demandais si il serait possible d'imprimer la demande brute en-têtes et le corps qui est envoyé et le raw en-têtes de réponse et le corps de la réponse qui revient.

C'est mon code où je créer une demande et d'obtenir une réponse en retour

public static TResponse ExecutePostCall<TResponse, TRequest>(String url, TRequest requestData, string token= "") where TResponse : new()
{
    RestRequest request = new RestRequest(url, Method.POST);
    if (!string.IsNullOrWhiteSpace(token))
    {
        request.AddHeader("TOKEN", token);
    }


    request.RequestFormat = DataFormat.Json;
    request.AddBody(requestData);

    //print raw request here

    var response = _restClient.Execute<TResponse>(request);

    //print raw response here

    return response.Data;
}

donc, Serait-il possible d'imprimer la crue de demande et de réponse?

  • voulez-vous faire ça à chaque fois ou juste pour déboguer quelque chose? si seulement un one-off puis utiliser un violon pour obtenir les premières demandes de va-et-vient
  • Pas une réponse complète, mais vous pouvez écrire votre propre sérialiseur/deserializer et journal de la genereated consommée JSON là. Mais vous pourriez être mieux avec une "reniflage" de proxy comme suggéré ci-dessus.
  • J'ai été en utilisant le violoneux. Je veux faire cela à chaque fois dans mon .net application.
  • faites u ont besoin de la corps ou uniquement les en-têtes? "tout" semble un peu exagéré, mais je ne sais pas ce que c'est que vous voulez exactement.
  • Je veux le code de réponse HTTP et le corps de la réponse.. pour une demande, j'ai besoin de la méthode et de l'url et le corps de la requête.
  • J'ai trouvé ce par le biais d'une recherche sur google et a été en mesure de le comprendre, à l'aide de Restsharp. Voir ma réponse ci-dessous.
  • avez-vous trouvé les réponses utiles? Je pense que la mienne accomplit tout ce dont vous avez besoin, malheureusement je l'ai posté 3 ans après votre question 😛 Mais peut-être que vous pourriez accepter de toute façon si vous jugez utiles. Merci!