我正在使用RestSharp将信息发送到API。我想记录我发送给这个API的XML,以便稍后调试。
我想做这样的事情:
var request = new RestRequest(resourcePath, method);
request.AddBody(dto);
Logger.Log(request.Content);
var response = Client.Execute(request);
但是,RestSharp发送的实际请求似乎没有暴露出来。
答案 0 :(得分:1)
请求中发送的所有内容都可以在request.Parameters。
中找到为了使请求主体更容易,我创建了这个扩展方法:
public static class RestSharpExtensions
{
public static string GetBody(this IRestRequest request)
{
var bodyParameter = request.Parameters
.FirstOrDefault(p => p.Type == ParameterType.RequestBody);
return bodyParameter == null
? null
: bodyParameter.Value.ToString();
}
}