Solved

ASP.NET equivalent to ASPHTTP component.

Posted on 2004-08-26
5
569 Views
Last Modified: 2008-01-09
Following is a a example ASP script that uses the ASPHttp component (basically you give it a URL and it returns the response string).

Set HttpObj = Server.CreateObject("AspHTTP.Conn")
HTTPObj.TimeOut = 10
theurl = "somevalidURL"
httpobj.url = theurl
strResult = HttpObj.GetURL

I need this exact function but in ASP.NET. I don't want to wrap the ASPHttp component or anything, I just want to use whatever in built funtions .NET has.
0
Comment
Question by:jmylrea
  • 3
  • 2
5 Comments
 
LVL 15

Accepted Solution

by:
Thogek earned 250 total points
Comment Utility
Sounds like you may be looking for the System.Net.HttpWebRequest class.  Details at http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemnethttpwebrequestclasstopic.asp
0
 

Author Comment

by:jmylrea
Comment Utility
Yeh I realise it may have something to do with that class. But I can't work out the exact syntax?
0
 

Author Comment

by:jmylrea
Comment Utility
This is the solution I was after. Thanks mate you tweaked my search enough to find it.


Dim strURL As String = "http://someURL/default.htm"
Dim objWebRequest As System.Net.HttpWebRequest
Dim objWebResponse As System.Net.HttpWebResponse
Dim streamReader As System.IO.StreamReader
Dim strHTML As String

objWebRequest = CType(System.Net.WebRequest.Create(strURL), System.Net.HttpWebRequest)
objWebRequest.Method = "GET"
objWebResponse = CType(objWebRequest.GetResponse(), System.Net.HttpWebResponse)

streamReader = New System.IO.StreamReader(objWebResponse.GetResponseStream)

strHTML = streamReader.ReadToEnd
Response.Write(strHTML)

streamReader.Close()
objWebResponse.Close()
objWebRequest.Abort()
0
 
LVL 15

Expert Comment

by:Thogek
Comment Utility
You may need to read through some of the documentation pages starting with that one.  It's not quite as simple as popping AspHTTP.Conn....

But something along the lines of (assuming C# syntax, and without testing any of this):

    System.Net.HttpWebRequest myReq = (HttpWebRequest)System.Net.WebRequest.Create("somevalidurl");
    myReq.Timeout = 1000;  // milliseconds
    System.Net.WebResponse myResp = myReq.GetResponse();
    System.IO.Stream strm = myResp.GetResponseStream();
    System.Text.Encoding enc = System.Text.Encoding.GetEncoding("utf-8");
    StreamReader readStream = new StreamReader(myResp, enc);

    StringBuilder sbResult = new StringBuilder();

    // Grab 256 chars at a time
    Char[] read = new Char[256];
    int count = readStream.Read( read, 0, 256 );
    while (count > 0)
    {
        // add the 256 characters into the StringBuilder
        sbResult.Append(read);
        count = readStream.Read(read, 0, 256);
    }

    // dump the StringBuilder contents into a string variable
    string strResult = sbResult.ToString();

    // free up the stream's resources
    myResp.Close();

For a list of the properties and methods of the WebRequest class, see http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemnetwebrequestmemberstopic.asp

For a list of the properties and methods of the WebResponse class, see http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemnetwebresponsememberstopic.asp
0
 
LVL 15

Expert Comment

by:Thogek
Comment Utility
StreamReader.ReadToEnd -- that's what I was missing.  :-O

Good stuff.  :-)
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

This article discusses the ASP.NET AJAX ModalPopupExtender control. In this article we will show how to use the ModalPopupExtender control, how to display/show/call the ASP.NET AJAX ModalPopupExtender control from javascript, how to show/display/cal…
In an ASP.NET application, I faced some technical problems. In this article, I list them out and show the solutions that I found.  I hope it will be useful. Problem: After closing a pop-up window, the parent page should be refreshed automaticall…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now