Web Get : Web Client : Network C# Source Code


Custom Search

C# Source Code » Network » Web Client »

 

Web Get









    

/*
C# Network Programming 
by Richard Blum

Publisher: Sybex 
ISBN: 0782141765
*/

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

public class WebGet : Form
{
   private TextBox uribox;
   private ListBox headers;
   private ListBox cookies;
   private ListBox response;

   public WebGet()
   {
      Text = "WebGet - a web page retriever";
      Size = new Size(500, 450);

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

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

      Label label2 = new Label();
      label2.Parent = this;
      label2.Text = "Headers:";
      label2.AutoSize = true;
      label2.Location = new Point(10, 46);

      headers = new ListBox();
      headers.Parent = this;
      headers.HorizontalScrollbar = true;
      headers.Location = new Point(10, 65);
      headers.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);

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


      Button sendit = new Button();
      sendit.Parent = this;
      sendit.Text = "GetIt";
      sendit.Location = new Point(275, 18);
      sendit.Size = new Size(7 * Font.Height, 2 * Font.Height);
      sendit.Click += new EventHandler(ButtongetitOnClick);
   }

   void ButtongetitOnClick(object obj, EventArgs ea)
   {
      headers.Items.Clear();
      cookies.Items.Clear();
      response.Items.Clear();

      HttpWebRequest hwr = (HttpWebRequest)WebRequest.Create(uribox.Text);
      hwr.CookieContainer = new CookieContainer();
      HttpWebResponse hwrsp = (HttpWebResponse)hwr.GetResponse();
      WebHeaderCollection whc = hwrsp.Headers;
      for (int i = 0; i < whc.Count; i++)
      {
         headers.Items.Add(whc.GetKey(i) + " = " + whc.Get(i));
      }

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

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

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

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

           
       
    
   
  
   







HTML code for linking to this page:

Follow Navioo On Twitter

C# Source Code

 Navioo Network
» Web Client