C# HttpWebRequest中出现错误
我有一个使用HttpWebRequest的WP7应用程序。应用程序尝试从服务器获取一些xml数据。但是当我试图获取详细信息时,出现了一个运行时错误。错误发生在C# HttpWebRequest中出现错误,c#,silverlight,windows-phone-7,C#,Silverlight,Windows Phone 7,我有一个使用HttpWebRequest的WP7应用程序。应用程序尝试从服务器获取一些xml数据。但是当我试图获取详细信息时,出现了一个运行时错误。错误发生在 HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult); 在ReadCallback方法中。错误消息为“远程服务器返回错误:NotFound.”,错误状态为“UnknowError” 代码如下 private void SendPos
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult);
在ReadCallback方法中。错误消息为“远程服务器返回错误:NotFound.”,错误状态为“UnknowError”
代码如下
private void SendPostRequest(byte[] userDetails)
{
string url = "http://myWebsite.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(url, UriKind.Absolute));
string auth = "Basic " + Convert.ToBase64String(userDetails);
request.Accept = "*/**";
request.ContentType = "application/x-www-form-urlencoded";
request.UseDefaultCredentials = true;
request.Headers[HttpRequestHeader.Authorization] = auth;
request.Headers[HttpRequestHeader.ContentLength] = Convert.ToString(0);
request.Method = "POST";
request.BeginGetResponse(new AsyncCallback(ReadCallBack), request);
}
private void ReadCallBack(IAsyncResult asyncResult)
{
HttpWebRequest request = (HttpWebRequest)asyncResult.AsyncState;
try
{
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult);
using (StreamReader streamReader1 = new StreamReader(response.GetResponseStream()))
{
string resultString = streamReader1.ReadToEnd();
}
}
catch (WebException ex)
{
string errorMessage = ex.Message;
string errorStatus = ex.Status.ToString();
}
}
不幸的是,“NotFound”响应会针对各种错误返回。您是如何验证服务器是否已启动、URI是否正确(没有拼写错误)以及是否可以通过电话访问它的?这是我的错,我使用了byte[]byteArray=System.Text.Unicode.GetBytes(uIdPass);而不是byte[]byteArray=System.Text.UTF8Encoding.UTF8.GetBytes(uIdPass);