Итак, я знаю, как получить данные формы, используя Request.Form["abc"]
, но как мне получить тело?
Я использовал этот фрагмент в приведенной ниже ссылке:
https://gist.github.com/leggetter/769688
Но я не уверен, что передать в качестве ответа.
В PHP сделать это: file_get_contents('php://input');
и это так просто.
Примечания. Тип содержимого POST — application/json, а тело содержит строку json
.
Заранее спасибо.
2 ответа
Если я правильно понял ваш вопрос, вот что вы можете сделать при публикации на ресурсе, для которого вы ожидаете ответа JSON:
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("http://foo.com/bar/");
httpWebRequest.Method = WebRequestMethods.Http.Post;
httpWebRequest.Accept = "application/json";
HttpWebResponse response = (HttpWebResponse)httpWebRequest.GetResponse();
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);
//store json in a variable for later use
string json = readStream.ReadToEnd();
//make sure to close
response.Close();
readStream.Close();
Конечно, этот подход является синхронным; но, в зависимости от ваших требований, это может быть просто прекрасно.
Поскольку в вашем вопросе не указано, нужно ли вам знать, как анализировать сам JSON, я не учел пример анализа JSON.
Вам понадобится код, аналогичный этому, чтобы прочитать необработанное тело запроса в строковую переменную.
using (StreamReader reader = new StreamReader(HttpContext.Current.Request.InputStream))
{
string text = reader.ReadToEnd();
}
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.