HttpWebRequest Post method

HttpWebRequest Post method
In this post, I will Check "Yahoo online user status" using and HttpWebRequest POST method. You can see the below screen shot. Also watch video about HttpWebRequest in

Add Button control in your web page and write down below code to see yahoo user online status. Your aspx page will look like below one

 <form id="form1" runat="server">


ID="Label1" runat="server" Text="Label" BackColor="#FFFF80" ForeColor
asp:Label><br />

Yahoo user name:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text=":) Check Online Status !" />



On click event of button, we will post the user name to Yahoo and Yahoo will response the user online status.

We will use HttpWebRequest post method and HttpWebResponse to receive the response.

Add below name space in your code  

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Net;


public partial class Default2 : System.Web.UI.Page


protected void Page_Load(object sender, EventArgs e)


Label1.Text = "";


protected void Button2_Click(object sender, EventArgs e)


HttpWebRequest request = (HttpWebRequest)WebRequest.Create("");

request.Timeout = 9 * 1000; // set request timeout = 9 second. if yahoo api failed to respond in 9 second request would get timed out.

request.Method = "Post"; // we will post the data using post method

string postData = "u=" + TextBox1.Text + "&m=s&t=8" ;

// data to be posted using HttpWebrequest post method

// we will post parameter u , m and t

// Convert this string into stream of bytes

byte[] arrPostDAta = System.Text.Encoding.GetEncoding(1252).GetBytes(postData);

// set request content length = post data length

request.ContentLength = arrPostDAta.Length;

System.IO.Stream strmPostData = request.GetRequestStream();

// get request stream

// write post data to stream of request

strmPostData.Write(arrPostDAta, 0, arrPostDAta.Length);


// upload post data and Get Response from server

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

StreamReader reader = new StreamReader(response.GetResponseStream());

Label1.Text = reader.ReadToEnd();





HttpWebRequest and HttpWebResponse objects can be found under namepsace System.Net;

Label will show you yahoo online user status.

I learned HttpWebRequest and HttpWebResponse using this article

You can also watch below 8min video to understand how it works.


Postback from JavaScripthttpwebrequest web proxyJQuery Ajax PostHttpWebRequest and yahooHttpWebRequestHttpWebRequest TimeoutC# SystemIOFileReadAllLines() methodHow to use HttpWebRequest and HttpWebResponse.C# Parse method of DateTimeC# ArrayList Search using Linq Extension OfType Methodc# send SMS (Text)


My name is Satalaj, but people call me Sat. Here is my homepage: . I live in Pune, PN and work as a Software Engineer. I'm former MVP in year 2010.
Disclaimer: Views or opinion expressed here are my personal research and it has nothing to do with my employer. You are free to use the code, ideas/hints in your projects. However, you should not copy and paste my original content to other web sites. Feel free to copy or extend the code.
If you want to fight with me, this website is not for you.

I'm Satalaj.