Существует ли класс C # или .NET для обработки согласования содержимого HTTP? - PullRequest
6 голосов
/ 22 мая 2010

Существует ли класс C # или .NET для обработки согласования содержимого HTTP с пользовательским агентом?

Я бы хотел предоставить список допустимых типов контента и согласовать их с браузером, чтобы найти наилучшее соответствие.

Ответы [ 2 ]

1 голос
/ 10 июня 2011
0 голосов
/ 01 марта 2011

Я думаю, что слово user agent немного в вашем вопросе, но если вы хотите создать запрос к определенному источнику (допустим, перезапускаемый API). Вы можете использовать WCF Rest Starter Kit (http://wcf.codeplex.com/), чтобы указать тип контента, который вы хотите или принимаете:

HttpClient client = new HttpClient(new Uri("http://restfull/api/"));
//this is XML but could be JSON or whatever the API can supply
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml"));
var response = client.Get(path);

if (response != null)
{
  response.EnsureSuccessStatusCode();
  //this will be XML
  string xml = response.Content.ReadAsString();
}
...