Java Reference
In-Depth Information
Example 10-1. HTTPSClient
import java.io.* ;
import javax.net.ssl.* ;
public class HTTPSClient {
public static void main ( String [] args ) {
if ( args . length == 0 ) {
System . out . println ( "Usage: java HTTPSClient2 host" );
return ;
}
int port = 443 ; // default https port
String host = args [ 0 ];
SSLSocketFactory factory
= ( SSLSocketFactory ) SSLSocketFactory . getDefault ();
SSLSocket socket = null ;
try {
socket = ( SSLSocket ) factory . createSocket ( host , port );
// enable all the suites
String [] supported = socket . getSupportedCipherSuites ();
socket . setEnabledCipherSuites ( supported );
Writer out = new OutputStreamWriter ( socket . getOutputStream (), "UTF-8" );
// https requires the full URL in the GET line
out . write ( "GET http://" + host + "/ HTTP/1.1\r\n" );
out . write ( "Host: " + host + "\r\n" );
out . write ( "\r\n" );
out . flush ();
// read response
BufferedReader in = new BufferedReader (
new InputStreamReader ( socket . getInputStream ()));
// read the header
String s ;
while (!( s = in . readLine ()). equals ( "" )) {
System . out . println ( s );
}
System . out . println ();
// read the length
String contentLength = in . readLine ();
int length = Integer . MAX_VALUE ;
try {
length = Integer . parseInt ( contentLength . trim (), 16 );
} catch ( NumberFormatException ex ) {
// This server doesn't send the content-length
// in the first line of the response body
Search WWH ::




Custom Search