Отладка HTTP-сообщения в ядре do tnet - PullRequest
0 голосов
/ 12 марта 2020

Я использую базовый API do tnet, чтобы запрашивать данные у другого API, обрабатывать их и отправлять обратно. Пока все хорошо, я получил ошибку и хотел спросить, как отладить этот код, в частности, как получить точный запрос

Вот мой код (по какой-то причине мне нужно отправить application / x- www-form-urlencoded и один параметр под названием XML = content, который работает, например, в почтальоне)

public async Task<IActionResult> blub()
{
    try
    {
        string url = @"https://url";

        var content = new List<KeyValuePair<string, string>>();
        content.Add(new KeyValuePair<string, string>("xml", "content"));
        using (var httpClient = new HttpClient())
        {
            httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/x-www-form-urlencoded");
            HttpResponseMessage httpResponse = httpClient.PostAsync(
                new Uri(url), new FormUrlEncodedContent(content)).Result;

            httpResponse.EnsureSuccessStatusCode();
            return Ok(httpResponse);
        }
    }
    catch (Exception e)
    {
        return Ok(e);
    }
}

Проблема в том, что в почтальоне я получаю 200, здесь 500, и я не знаю, как отладить это. Если я читаю httpResponse, я не могу найти тело, например, содержимое. Может быть, в этом причина 500. В частности, мне нужно было бы увидеть запрос следующим образом:

POST /xmlservice.asmx/api HTTP / 1.1 Хост: xml .host.com Содержимое -Тип: application / x- www-form-urlencoded длина-содержимого: 1159

xml = content

...