C#HttpWebRequest返回500内部错误
我想知道为什么我的HTTP请求返回响应500服务器内部错误。C#HttpWebRequest返回500内部错误
我用这个C#代码
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://svabyss.66ghz.com/getmsg.php");
req.ContentLength = ("receiver=" + b.ToString() + "&PHPSESSID=" + _SESSIONID).Length;
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
req.KeepAlive = true;
req.CookieContainer = new CookieContainer();
req.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13";
req.Headers[HttpRequestHeader.Pragma] = "cache";
req.UseDefaultCredentials = true;
req.Credentials = CredentialCache.DefaultNetworkCredentials;
req.PreAuthenticate = true;
req.Proxy = new WebProxy("http://svabyss.66ghz.com:80", true);
StreamWriter writer = new StreamWriter(req.GetRequestStream());
writer.Write("receiver=" + b.ToString() + "&PHPSESSID=" + _SESSIONID);
writer.Flush();
writer.Dispose();
try
{
HttpWebResponse response = (HttpWebResponse)req.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
OperationCompleted(new SVWorkerEventArgs("GET|" + b.ToString(), reader.ReadToEnd()));
response.Close();
reader.Dispose();
}
catch (WebException ex)
{
StreamReader str = new StreamReader(ex.Response.GetResponseStream());
string err = str.ReadToEnd();
}
我不知道至极头,我错过。任何帮助将是伟大的!
感谢..
问题修正
我收到通过由服务器返回的错误消息的回复。错误信息实际上是我想要的结果。
现在,我不在乎什么服务器回复我。阉了404或505,返回的错误信息是我想要的..
谢谢你们:)
,因为服务器(而不是客户端)发生内部错误500错误代码返回。要找出错误是什么,您需要访问服务器的日志,或者需要询问有权访问的人员。
它是完全可能的错误是由您的代码中的某些内容引起的,但不知道错误在另一端是什么,您无法确定。它可以很容易地在自己的代码的东西,或者他们DATABSE连接等
我建议你请求一个浏览器在运行小提琴手: http://www.fiddler2.com/fiddler2/
看看那里使用的标题。
+1的小提琴手,发现它可以对我有用。 –
'POST http://svabyss.66ghz.com/getmsg.php?receiver=putra HTTP/1.1' 'Content-Type:application/x-www-form-urlencoded' 'User-Agent:abyss' '主机:svabyss.66ghz.com' '的Content-Length:42' '期望值:100-continue' 'PHPSESSID = 119f0d7a53a2d8e30282701d5ca856bd' 那是提琴手头请求RAW。我没有任何想法发生了什么.. –
你有目标网页的控制权?还是它由别人拥有?另外,我会尝试在WebRequest.Create(“http://svabyss.66ghz.com/getmsg.php”)中追加查询字符串; –
您是否尝试过没有'Proxy'? – dtb
你为什么要指定所有这些设置? –
我的第一个代码只是 'req.ContentType =“应用/的X WWW的形式进行了urlencoded”;' 只有这头值我设置,它的返回相同的错误 –