这是我第一次尝试使用休息网络服务。
在这个R WS中我需要创建一个头并在json中发送值。以下是我正在使用的代码。
var password = tb_Authorization.Text;
var user = tb_AppCaller.Text;
string wrURL = tb_URL.Text;
WebRequest req = WebRequest.Create(tb_URL.Text);
req.Method = "POST";
req.ContentType = "application/json";
req.Headers["Authorization"] = tb_Authorization.Text;
req.Headers["AppCaller"] = tb_AppCaller.Text;
我需要像下面这样发送一个json来获得响应:
{ "lastName": "Jordan", "firstName": "Michael"}
获得:
{
"NumCountry": 1,
"Country": [
{
"Name": "USA",
"rank": 1
}
]
}
在最后一部分,我的大脑僵住了,我不能做“下一步”。 我的基本问题是如何在标题中发送json?
答案 0 :(得分:1)
您必须使用StreamWriter
和StreamReader
。
var httpWebRequest = (HttpWebRequest)WebRequest.Create(tb_URL.Text);
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = "{\"lastName\": \"Jordan\", \"firstName\": \"Michael\"}";
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
}
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}