Создание и получение HTTP-запроса в C#

Я хочу, чтобы мое приложение c# могло отправлять http-запрос и получать ответ во время выполнения

объяснение с веб-сайта, который я хочу запросить, это здесь

У меня нет никакого опыта с этим раньше, поэтому я немного запутался в JSON, XML-материале Я знаю, что мне понадобится синтаксический анализатор XML или что-то вроде этого, чтобы понять запрос

5 ответов


создание HTTP-запроса очень просто, если вы не хотите его настраивать: один вызов метода WebClient.DownloadString. Например:

var client = new WebClient();
string html = client.DownloadString("http://www.google.com");
Console.WriteLine(html);

вам нужно будет создавать правильный URL-адрес каждый раз в соответствии с документацией, на которую вы ссылаетесь.

Если вы используете пример кода выше, чтобы поговорить с вашим API, html (что на самом деле является данными ответа в целом) будет содержать либо XML, либо JSON в виде строки. Затем вам нужно будет проанализировать это в какой-то другой тип дерева объектов чтобы вы могли работать с ответом.


Помимо использования WebClient, как было предложено, вы также можете взглянуть на EasyHttp Хади Харири из JetBrains. Вы можете найти его в https://github.com/hhariri/EasyHttp резюме от ReadMe:

EasyHttp-простой в использовании HTTP-клиент, который поддерживает:

  • HEAD, PUT, DELETE, GET, POST
  • печенье
  • проверка подлинности
  • динамическая и статическая типизация
  • XML, JSON и WWW-Url форма закодирована кодирование/декодирование
  • загрузка файлов через PUT и POST (multipart/formdata)
  • некоторые другие аккуратные черты....

вы захотите посмотреть HttpWebRequest и HttpWebResponse объекты. Это будут объекты, которые фактически делают HTTP-запросы.

запрос и ответ будут содержать XML и JSON в телах на API ViralHeat, с которыми вы связаны.


Это http://www.nuget.org/List/Packages/HttpClient является стратегическим httpclient Microsoft движется вперед. Я ожидаю, что эта библиотека будет реализована на всех платформах Microsoft в ближайшем будущем.


вы можете реализовать API REST WCF:http://www.codeproject.com/KB/WCF/RestServiceAPI.aspx