添加自定义页眉使用的HttpWebRequest [英] Add Custom Headers using HttpWebRequest

查看:171
本文介绍了添加自定义页眉使用的HttpWebRequest的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我真的不知道这些突出显示的值是什么类型的头,但我要如何将它们添加使用的HttpWebRequest





是HTTP请求或头数据的突出显示部分考虑的身体吗? ?换句话说,哪条路是正确的。



下面是我目前使用的代码:

  HttpWebRequest的要求=(HttpWebRequest的)WebRequest.Create(/ securecontrol / RESET / passwordreset); 
request.Headers.Add(授权,基本asdadsasdas8586);
request.ContentType =应用/的X WWW的形式,进行了urlencoded
request.Host =www.xxxxxxxxxx.com;
request.Method =POST;
request.Proxy = NULL;
request.Headers.Add(与&命令= requestnewpassword);
request.Headers.Add(与&应用= NETCONNECT);



但我应该用下面的,而不是建立上述HTTP请求?



 字符串reqString =&放大器;命令= requestnewpassword&安培;应用= NETCONNECT; 
字节[] =的RequestData Encoding.UTF8.GetBytes(reqString);

HttpWebRequest的要求=(HttpWebRequest的)WebRequest.Create(/ securecontrol / RESET / passwordreset);
request.Headers.Add(授权,基本ashAHasd87asdHasdas);
request.ContentType =应用/的X WWW的形式,进行了urlencoded
request.ContentLength = requestData.Length;
request.Proxy = NULL;
request.Host =www.xxxxxxxxxx.com;
request.Method =POST;使用(流ST = request.GetRequestStream())
st.Write(的RequestData,0,requestData.Length)

;


解决方案

恕我直言,它被认为是畸形的头数据。



您真的想送这些名称值对作为请求的内容(这是方法POST作品)的而不是标题



的第二种方法是真实的。


I am not really sure what type of headers these highlighted values are, but how should I add them using HttpWebRequest?

Is the highlighted part considered body of the http request or header data? In other words, which way is correct?

Here is the code I am currently using:

HttpWebRequest request = (HttpWebRequest) WebRequest.Create("/securecontrol/reset/passwordreset");
request.Headers.Add("Authorization", "Basic asdadsasdas8586");
request.ContentType = "application/x-www-form-urlencoded";
request.Host = "www.xxxxxxxxxx.com";
request.Method = "POST";
request.Proxy = null;
request.Headers.Add("&command=requestnewpassword");
request.Headers.Add("&application=netconnect");

But should I use the following instead to build the Http Request above?

string reqString = "&command=requestnewpassword&application=netconnect";
byte[] requestData = Encoding.UTF8.GetBytes(reqString);

HttpWebRequest request = (HttpWebRequest) WebRequest.Create("/securecontrol/reset/passwordreset");
request.Headers.Add("Authorization", "Basic ashAHasd87asdHasdas");
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = requestData.Length;
request.Proxy = null;
request.Host = "www.xxxxxxxxxx.com";
request.Method = "POST";

using (Stream st = request.GetRequestStream())
st.Write(requestData, 0, requestData.Length);

解决方案

IMHO it is considered as malformed header data.

You actually want to send those name value pairs as the request content (this is the way POST works) and not as headers.

The second way is true.

这篇关于添加自定义页眉使用的HttpWebRequest的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆