所以,我知道如何使用Request.Form["abc"]
来获取表单数据但是如何通过将主体取出来?
我在以下链接中使用了此代码段:
https://gist.github.com/leggetter/769688
但是,我不确定将什么传递给响应。
在PHP中执行此操作:file_get_contents('php://input');
并且就这么简单。
注意:POST的内容类型是application / json,正文包含json
字符串。
提前致谢。
答案 0 :(得分:0)
如果我正确理解了您的问题,那么在发布到您希望获得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解析的例子。
答案 1 :(得分:0)
您需要与此类似的代码才能将原始请求主体读入字符串变量。
using (StreamReader reader = new StreamReader(HttpContext.Current.Request.InputStream))
{
string text = reader.ReadToEnd();
}