【发布时间】:2015-10-26 12:38:19
【问题描述】:
如何发出 HTTP 请求并发送带有 Headers 的 Json 数据并读取响应?
第三方提供了一些凭据来使用他们的 API。使用这些凭据,我需要调用 API 并读取响应。我需要发送一个名为 SIGNATURE 的标头以及请求数据。签名的值是加密的请求数据。
我可以发出 POST 请求,但不知道如何添加 Header。
我的代码是这样的
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("URL");
httpWebRequest.ContentType = "text/json";
httpWebRequest.Method = "POST";
httpWebRequest.Headers.Add("SIGNATURE", sEncrypteddata)
using (StreamWriter streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = "{\"id\":\"2423432432\"," +
"\"uid\":\"id123\","+
"\"pwd\":\"pass\","+
"\"apiKey\":\"2423432432\","+
"\"paymentCategory\":0"+
"\"paymentType\":0}";
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
}
System.Net.ServicePointManager.Expect100Continue = false;
HttpWebResponse httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (StreamReader streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
string result = streamReader.ReadToEnd();
}
这是正确的方法吗?
【问题讨论】:
-
我确定之前有人问过这个问题...
标签: c# .net json httprequest