2010-10-13 8 views
0

J'essaye de rechercher par programme un article sur le dit site Web.httpwebresponse ne fonctionne pas

Le suivi ne fonctionne pas pour moi. La réponse est en fait une page d'erreur, au lieu de la page de résultats de recherche.

Aide de Pls.

 string sUrl = "http://www.arrownac.com/"; 
     string sUrl1 = "http://app.arrownac.com/aws/pg_webc?s=P"; 

     HttpWebRequest owebreq = (HttpWebRequest)WebRequest.Create(sUrl1); 
     owebreq.Referer = sUrl;   

     ASCIIEncoding encoding = new ASCIIEncoding(); 

     string postdata = "search_token=" + "743C083102JPTR"; 
     byte[] data = encoding.GetBytes(postdata); 

     owebreq.ContentType = "text/html"; 
      //"application/x-www-form-urlencoded"; 

     owebreq.Method = "POST"; 
     owebreq.ContentLength = data.Length; 
     Stream newStream = owebreq.GetRequestStream(); 
     newStream.Write(data, 0, data.Length); 
     newStream.Close();   

     HttpWebResponse owebresp = (HttpWebResponse)owebreq.GetResponse(); 
     string sResult = string.Empty; 
     using (StreamReader sr = new StreamReader(owebresp.GetResponseStream())) 
     { 
      sResult = sr.ReadToEnd(); 
      sr.Close(); 
     } 
+0

Uhm, ce qui ne fonctionne pas? Avez-vous débogué? Avez-vous des erreurs, si oui quelle erreur (si page quel est le code)? Dites quelque chose de plus sur votre problème ou vous n'obtiendrez pas de bonnes réponses! – Younes

+0

il n'y a pas d'erreur de code, il s'exécute bien. Cependant, j'obtiens une réponse en tant que Arrow Electronics: erreur survenue

0

Pourquoi l'écriture de code tant quand il peut être simple:

class Program 
{ 
    static void Main() 
    { 
     using (var client = new WebClient()) 
     { 
      var referer = "http://www.arrownac.com/"; 
      client.Headers[HttpRequestHeader.Referer] = referer;     
      var valuesToPost = new NameValueCollection 
      { 
       { "search_token", "743C083102JPTR" }, 
      }; 
      var url = "http://app.arrownac.com/aws/pg_webc?s=P"; 
      var result = client.UploadValues(url, valuesToPost); 
      var resultString = Encoding.Default.GetString(result); 
      Console.WriteLine(resultString); 
     } 
    } 
} 
+0

désolé pas de chance, le résultat est le même que celui de mon code; ressemble à un site cible ne prend pas POST à ​​partir de programmes externes, pas sûr de savoir comment passer outre. – Lakshmish