2016-04-06 3 views
0

Мой запрос ответа HTTP HTTP напечатан следующим кодом.Тип контента в HTTP-вызове

HttpResponseMessage response = await client.PutAsync("https://restapi.surveygizmo.com/v4/survey/2692209/surveypage/3/surveyquestion?", inputMessage.Content); 

string returnString = response.ToString(); 
Console.WriteLine(returnString); 
Console.WriteLine(response.StatusCode); 

Я хочу напечатать информацию типа содержимого, которая будет напечатана на консоли или в каком-либо другом формате. В основном я хочу видеть тип содержимого в C#. Как мне это сделать?

+0

Вы ищете тип контента или ответ на него? –

ответ

1

С помощью HttpContent и читать буфер.

Базовый класс, представляющий тело объекта HTTP и заголовки содержимого.

using (HttpContent content = response.Content) 
{ 
    // ... Read the string. 
    string result = await content.ReadAsStringAsync(); 

    // ... Display the result. 
    Console.WriteLine(result); 
} 
+0

Получил ответ, который мне нужен, но я получаю это исключение позже Необработанное исключение типа «System.AggregateException» произошло в mscorlib.dll – Karen

+0

Надеюсь, вы используете переменную 'result' и не перезапускаете' content.ReadAsStringAsync() '. –

+0

Да, я использую переменную result. Программа работает нормально, и я получаю ответ butt. Я получаю исключение после этого. Необработанное исключение типа «System.AggregateException» на этой планете я считаю RunQuestions(). Wait(); – Karen

2

Используя информацию Content.Headers.ContentType, сохраненную в ответе (Can't set Content-Type header on HttpResponseMessage headers?).

Е.Г., чтобы написать консольного типа на консоль, вы должны сделать следующее:

HttpResponseMessage response = await client.PutAsync("https://restapi.surveygizmo.com/v4/survey/2692209/surveypage/3/surveyquestion?", inputMessage.Content); 

Console.WriteLine(response.Content.Headers.ContentType); 
Смежные вопросы