我以编程方式向远程服务器发送请求:如何发送授权请求
string xml =“SomeXML Data”;
string url = @"http://someserver.com";
WebRequest request = WebRequest.Create(url);
request.Method = "Post";
request.ContentType = "text/xml";
//The encoding might have to be chaged based on requirement
UTF8Encoding encoder = new UTF8Encoding();
byte[] data = encoder.GetBytes(xml); //postbody is plain string of xml
request.ContentLength = data.Length;
Stream reqStream = request.GetRequestStream();
reqStream.Write(data, 0, data.Length);
reqStream.Close();
System.Net.WebResponse response = request.GetResponse();
System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream());
string str = reader.ReadToEnd();
但这代码抛出错误:
远程服务器返回一个错误:(401)未经授权。
我知道用户/通过自动化时IE浏览器问我。
任何人都可以帮助我如何发送授权请求? 谢谢!
你怎么知道它是Windows身份验证? – Andrey 2010-11-11 17:56:16
我不知道。正如我所说,我猜测...但很可能。 – Aliostad 2010-11-11 18:31:55
伙计webClient.Credentials = new NetworkCredential(“Login”,“Password”); 工程,但只有当我调试和一些时间传递,如果我运行的页面没有调试器,远程服务器抛出错误:远程服务器返回错误:(400)错误的请求。 – ihorko 2010-11-11 18:38:55