2014-04-23 1 views
0

으로 리디렉션됩니다. 브라우저를 통해 http://support.microsoft.com/common/survey.aspx?scid=sw%3ben%3b3547&showpage=1을로드하면 올바른 페이지로 이동하지만 다음 HttpWebResponse를 수행하면 존재하지 않는 다른 URI가 반환됩니다. 도와주세요!!!HttpWebResponse가 오류 페이지

private string[] getTitleNewUrl() 
{ 
    string[] titleNewUrl = new string[2]; 
    var navigatedUrl = string.Empty; 

    string title = string.Empty; 
    try 
    { 
     HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://support.microsoft.com/common/survey.aspx?scid=sw%3ben%3b3547&showpage=1"); 
     request.Credentials = System.Net.CredentialCache.DefaultCredentials; 
     HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

     if (response.StatusCode == HttpStatusCode.OK) 
     { 
      navigatedUrl = response.ResponseUri.ToString(); **//this returns [http://support.microsoft.com/default.aspx?scid=gp;en-us;fmserror][1]** 

      StreamReader sr = new StreamReader(response.GetResponseStream()); 
      var htmlSource = sr.ReadToEnd(); 

      Match m = Regex.Match(htmlSource, @"<title>\s*(.+?)\s*</title>"); 
      if (m.Success) 
      { 
       title = m.Groups[1].Value; 
      } 

      titleNewUrl[0] = title; 
      titleNewUrl[1] = navigatedUrl; 
     } 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show("Invalid URL: " + navigatedUrl + " Error: " + ex.Message); 
    } 

    return titleNewUrl; 
} 

답변

0

당신은 예를 들어, 그들이 사용할 수있는 몇 가지 사용자 에이전트를 사용해야합니다 :

request.UserAgent = "Mozilla";