
03-13-2008, 10:55 AM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
[SOLVED] http request
Hi all,
For the first time I'm going to do this.
I have a http URL, and I want to make a request through that URL. Response is a String, which I want to use for further processing.
Any comments appreciate.
Eranga
|
|

03-13-2008, 11:17 AM
|
 |
Member
|
|
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
|
|
|
WHAT DO YOU MEAN BY "Response is as String, which I want to use for further processing. "
D you want to make a URL request via a web browser and get the response for further processing before rendering onto the browser itself or what?
|
|

03-13-2008, 11:34 AM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
|
Ok, I have a URL where I want to make a request. On that request, the URL, actually the server gives a response. Simply a IP which my network is belongs to.
|
|

03-13-2008, 11:38 AM
|
 |
Member
|
|
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
|
|
Originally Posted by Eranga
|
|
Ok, I have a URL where I want to make a request. On that request, the URL, actually the server gives a response. Simply a IP which my network is belongs to.
|
Cool. Now I understand.
Ok, what technology are you using ie: JSP's, Servlets etc???
|
|

03-13-2008, 12:27 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
|
Actually I just use simple Java technologies. And I have done it myself. It's not difficult at all. Simply call URL.openStream() to get the replay to a stream buffer. Then store it in a String variable for later user.
So, my problem is solved. Thanks for all who replay and view my post.
Eranga
|
|

03-13-2008, 12:29 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
Just three lines to use.
|
Code:
|
URL myRequest = new URL(my_url_goes_here);
BufferedReader in = new BufferedReader(new InputStreamReader(myRequest.openStream()));
String str = in.readLine();
in.close(); |
What you think of it.
Eranga.
|
|

03-13-2008, 02:23 PM
|
 |
Member
|
|
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
|
|
Originally Posted by Eranga
|
Just three lines to use.
|
Code:
|
URL myRequest = new URL(my_url_goes_here);
BufferedReader in = new BufferedReader(new InputStreamReader(myRequest.openStream()));
String str = in.readLine();
in.close(); |
What you think of it.
Eranga.
|
It looks simple enough and you say It works... I love it!!
Is the class URL a custom class --- if not, can you give us the full package name. It may come in handy in some other projects. If it is, can you highlight the implementation..
Nice code though!
|
|

03-14-2008, 04:46 AM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
Actually nothing much I used. Just import import java.net.URL;
Rather than, you have to handle all the exceptions. You want the full code which I have work on, if so I'll put it here after completing all.
Me too, love this code. It's so simple, really simply. Even you handle all the exceptions, only need to write around 10 to 15 lines.
|
|

03-17-2008, 04:19 PM
|
 |
Member
|
|
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
|
|
Are you still going to put the full code as highlighted earlier, or you intend on sending a private msg?
|
|

03-19-2008, 10:37 AM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
|
Aah,
Actually I'm saying about the exception handling. That's it. Ok, I'll put my code here.
|
|

04-08-2008, 11:39 AM
|
 |
Moderator
|
|
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
|
|
Hey aibtus - Here is a full code example:
|
Code:
|
import java.net.*;
import java.io.*;
class httpconnect {
public static void main(String[] args) throws Exception {
URL url = new URL("http://www.google.co.uk/");
URLConnection spoof = url.openConnection();
spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );
BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));
String strLine = "";
while ((strLine = in.readLine()) != null) {
System.out.println(strLine);
}
in.close();
}
} |
Note the extra bit of code:
|
Code:
|
spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" ); |
Websites like Google block connections to their site from programs other than web browsers. With this bit of code you can trick sites like these into thinking the connection is coming from a web browser. Very handy!
If you wish to surf through a proxy server then you can also add this code to the top:
|
Code:
|
System.getProperties().put("proxySet", "true");
System.getProperties().put("proxyPort", "80");
System.getProperties().put("proxyHost", "my.proxyserver.co.uk"); |
__________________
Did this post help you? Please me!
|
|

04-08-2008, 11:50 AM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
Nice work, but no need to worry that much pal. Here is my code.
|
Code:
|
try{
URL myRequest = new URL(buildRequestURL());
//URL myRequest = new URL(requestURL);
BufferedReader inMessage = new BufferedReader(new InputStreamReader(myRequest.openStream()));
String httpReplay = inMessage.readLine();
System.out.println(httpReplay);
return httpReplay;
}
inMessage.close();
}
catch(MalformedURLException ex){
System.out.println(ex);
}
catch(IOException ex){
System.out.println(ex);
} |
That's all. The replay caught here as a String.
|
|

04-08-2008, 11:53 AM
|
 |
Member
|
|
Join Date: Mar 2008
Location: Randburg, South Africa
Posts: 9
Rep Power: 0
|
|
Way to go
Thanx a lot. I will try it out and best comment later.
Originally Posted by DonCash
|
Hey aibtus - Here is a full code example:
|
Code:
|
import java.net.*;
import java.io.*;
class httpconnect {
public static void main(String[] args) throws Exception {
URL url = new URL("http://www.google.co.uk/");
URLConnection spoof = url.openConnection();
spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" );
BufferedReader in = new BufferedReader(new InputStreamReader(spoof.getInputStream()));
String strLine = "";
while ((strLine = in.readLine()) != null) {
System.out.println(strLine);
}
in.close();
}
} |
Note the extra bit of code:
|
Code:
|
spoof.setRequestProperty(
"User-Agent", "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0; H010818)" ); |
Websites like Google block connections to their site from programs other than web browsers. With this bit of code you can trick sites like these into thinking the connection is coming from a web browser. Very handy! 
If you wish to surf through a proxy server then you can also add this code to the top:
|
Code:
|
System.getProperties().put("proxySet", "true");
System.getProperties().put("proxyPort", "80");
System.getProperties().put("proxyHost", "my.proxyserver.co.uk"); |
|
|
|

04-08-2008, 11:55 AM
|
 |
Moderator
|
|
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
|
|
|
Quote:
|
Nice work, but no need to worry that much pal
|
Yeah I know... Just thought i'd add the extra code because you never know when you'll need it!
The code to trick websites into thinking you are a web browser needs to be used more and more nowdays as sites actively block connections.
__________________
Did this post help you? Please me!
|
|

04-08-2008, 12:10 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
Yes you are correct. At the time I need such a code, just to communicate with my other machine. Time to time I can develop it and I can use it as one of my libraries actually.
And also your code may really helpful to me develop my code segment.
|
|

04-08-2008, 12:12 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
|
Major thing I've forget to say is, default browser will be fired by the URL. Actually it bind with.
|
|

04-08-2008, 12:24 PM
|
 |
Moderator
|
|
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
|
|
Cool Cool
__________________
Did this post help you? Please me!
|
|

04-08-2008, 12:31 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
Ok, I got one scenario few days back. Say the html code comes with newline characters. Something like this,
|
Code:
|
<html>
<head></Head>
</html> |
Because of my readLine() only the <html> tag detected. How can I get whole the code. If I have that code as a single String it works.
Any idea you have?
|
|

04-08-2008, 12:36 PM
|
 |
Moderator
|
|
Join Date: Aug 2007
Location: London, UK
Posts: 241
Rep Power: 4
|
|
Yeah... Use this:
|
Code:
|
String strLine = "";
while ((strLine = in.readLine()) != null) {
System.out.println(strLine);
} |
This will display all the code from the HTML page as it loops through it.
__________________
Did this post help you? Please me!
|
|

04-08-2008, 12:50 PM
|
 |
Moderator
|
|
Join Date: Jul 2007
Location: Colombo, Sri Lanka
Posts: 7,481
Rep Power: 11
|
|
|
Hmm, I got the point. Say I want to return that String, I mean the whole String. Then what is the easiest way to do it.
|
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT +2. The time now is 01:46 AM.
|
|