CsGetPostUrlCSharp
Last changed: Alexander Zeitler


Summary: GET und POST auf Urls mit C#
Keywords: GET, POST, C#, HttpWebRequest, Sample, Beispiel
 <%@ Page language="C#"  %>
 <%@ Import Namespace="System.Net" %>
 <%@ Import Namespace="System.IO" %>
 <%@ Import Namespace="System.Text" %>
 <%@ Import Namespace="System.Text.RegularExpressions" %>
 <%@ Assembly Name="System.Net.dll" %>
 <%@ Assembly Name="System.Text.RegularExpressions.dll" %>


 <html>
  <body>
   <SCRIPT runat="server">
   void writeToURL (WebRequest request, string data) {


    byte [] bytes = null;
    bytes = System.Text.Encoding.ASCII.GetBytes (data);
    request.ContentLength = bytes.Length;
    Stream outputStream = request.GetRequestStream ();


    outputStream.Write (bytes, 0, bytes.Length);
    outputStream.Close ();
   }


   String retrieveFromURL (WebRequest request)
   {
    WebResponse response = request.GetResponse();
    Stream responseStream = response.GetResponseStream();
    StreamReader reader = new StreamReader (responseStream);
    return reader.ReadToEnd ();
   }


   void postToURL (Object sender, EventArgs eventArgs)
   {
    string value = urlList.SelectedItem.Value;
    WebRequest request = WebRequestFactory.Create (value);
    request.Method = "POST";
    request.ContentType = "application/x-www-form-urlencoded";
    if (value != null) {
     writeToURL (request, value);
    }
    else {
     request.ContentLength = 0;
    }
    string htmlContent = retrieveFromURL (request);
    htmlDisplayArea.InnerHtml = "";
    if (htmlContent != null) {
     htmlDisplayArea.InnerHtml += htmlContent;
    } 
   } 


   void getFromURL (Object sender, EventArgs eventArgs)
   {
    WebRequest request = WebRequestFactory.Create (urlEditBox.Text);
    string htmlContent = retrieveFromURL (request);
    htmlDisplayArea.InnerHtml = "";
    if (htmlContent != null) {
     htmlDisplayArea.InnerHtml += htmlContent;
    } 
   }


   </SCRIPT>
   <form method="post" runat="server">
   URL :<asp:TextBox Rows="1" Cols="80" runat=server ID="urlEditBox" />
   <br>
   <asp:Button runat=server Text="HTTP GET" ID="getURL" onClick="getFromURL" />
   <asp:Button runat=server Text="HTTP POST" ID="postURL" onClick="postToURL" />
   <br>
   <br>
   <frame runat=server ID="htmlDisplayArea" MaintainState="false" Wrap="True">
   </frame>
   </form>
  </body>
 </html>