Afficher l’en-tête les cookies et le contenu HTML d’un SiteWeb

Author:

Exemple,de,Connexion,à,un,Serveur,Mail
{filelink=17096}

using System;
using System.Drawing;
using System.IO;
using System.Net;
using System.Windows.Forms;

public class LireSiteweb : Form
{
   private TextBox txtURL;
   private ListBox cookies;
   private ListBox entete;
   private ListBox reponse;

   public LireSiteweb()
   {
       // Dessiner l'interface graphique
       InitilizeComponenet();
   }

   private void InitilizeComponenet()
   {
      Text = "LireSiteweb - Afficher un Siteweb";
      Size = new Size(500, 450);

      Label label1 = new Label();
      label1.Parent = this;
      label1.Text = "Lien:";
      label1.AutoSize = true;
      label1.Location = new Point(10, 23);

      txtURL = new TextBox();
      txtURL.Parent = this;
      txtURL.Size = new Size(200, 2 * Font.Height);
      txtURL.Location = new Point(35, 20);

      Label label2 = new Label();
      label2.Parent = this;
      label2.Text = "En-tête:";
      label2.AutoSize = true;
      label2.Location = new Point(10, 46);

      entete = new ListBox();
      entete.Parent = this;
      entete.HorizontalScrollbar = true;
      entete.Location = new Point(10, 65);
      entete.Size = new Size(450, 6 * Font.Height);

      Label label3 = new Label();
      label3.Parent = this;
      label3.Text = "Cookies:";
      label3.AutoSize = true;
      label3.Location = new Point(10, 70 + 6 * Font.Height);

      cookies = new ListBox();
      cookies.Parent = this;
      cookies.HorizontalScrollbar = true;
      cookies.Location = new Point(10, 70 + 7 * Font.Height);
      cookies.Size = new Size(450, 6 * Font.Height);

      Label label4 = new Label();
      label4.Parent = this;
      label4.Text = "HTML:";
      label4.AutoSize = true;
      label4.Location = new Point(10, 70 + 13 * Font.Height);

      reponse = new ListBox();
      reponse.Parent = this;
      reponse.HorizontalScrollbar = true;
      reponse.Location = new Point(10, 70 + 14 * Font.Height);
      reponse.Size = new Size(450, 12 * Font.Height);

      Button btnAffich = new Button();
      btnAffich.Parent = this;
      btnAffich.Text = "Afficher";
      btnAffich.Location = new Point(275, 18);
      btnAffich.Size = new Size(7 * Font.Height, 2 * Font.Height);
      btnAffich.Click += new EventHandler(btnAffichOnClick);
   }
   void btnAffichOnClick(object obj, EventArgs ea)
   {
      entete.Items.Clear();
      cookies.Items.Clear();
      reponse.Items.Clear();

      HttpWebRequest requete = (HttpWebRequest)WebRequest.Create(txtURL.Text);
      requete.CookieContainer = new CookieContainer();
      HttpWebResponse reqReponse = (HttpWebResponse)requete.GetResponse();
      WebHeaderCollection whc = reqReponse.Headers;
      for (int i = 0; i < whc.Count; i++)
      {
         entete.Items.Add(whc.GetKey(i) + " = " + whc.Get(i));
      }

      reqReponse.Cookies = requete.CookieContainer.GetCookies(requete.RequestUri);
      foreach(Cookie cky in reqReponse.Cookies)
      {
         cookies.Items.Add(cky.Name + " = " + cky.Value);
      }

      Stream strm = reqReponse.GetResponseStream();
      StreamReader sr = new StreamReader(strm);

      while (sr.Peek() > -1)
      {
         reponse.Items.Add(sr.ReadLine());
      }
      sr.Close();
      strm.Close();
   }

   public static void Main()
   {
      Application.Run(new LireSiteweb());
   }
}

Leave a Reply

Your email address will not be published. Required fields are marked *