Disqus Shortname

Pemrograman Jaringan Dengan Java (ExHTTPClient)

Contoh program aplikasi HTTP Client yang akan menggunakan perintah HTTP untuk mengambil dokumen yang ada melalui protokol HTTP

import java.io.*;
import java.net.*;
/**
* Contoh aplikasi yang membuka koneksi ke web server
* local dan membaca sebuah dokument darinya
*/
public class ExHTTPClient{
public static void main(String args[])
{
try
{
//Buka koneksi client dengan socket
Socket clientSocket = new Socket(args[0],80);
System.out.println("Client:"+ clientSocket);
//Panggil method untuk mengambil dokumen
getHTML(clientSocket,args[1]);
}
catch(UnknownHostException e)
{ System.out.println(e);}
catch(IOException e)
{ System.err.println(e);}
}
/**
* Method yang akan meminta sebuah dokumen ke web server.
* Tampilkan hasil reply dari server dan tutup
* koneksinya.
*/
public static void getHTML(Socket clientSocket,
String fileName)
{
try
{
// membentuk input dan output stream dari
// socket yang terbentuk untuk pengiriman
// dan penerimaan data
DataOutputStream outbound = new DataOutputStream(
clientSocket.getOutputStream());
DataInputStream inbound = new DataInputStream(
clientSocket.getInputStream());
//kirim sebuah permintaan HTTP ke server
outbound.writeBytes("GET" + fileName +
"HTTP/1.0\r\n\r\n");
//membuat respone dari HTTP
String responseLine;
while((responseLine = inbound.readLine())
!=null)
{
//tampilkan setiap baris ke layar monitor
System.out.println(responseLine);
}
//Clean up
outbound.close();
inbound.close();
clientSocket.close();
}
catch (IOException e)
{ System.out.println(e);}
}
}


HASIL PROGRAM :

Tool Output :

Tool completed successfully















Contoh Output :
Client :
Socket[addr=localhost/127.0.0.1,port=80,localport=1072]
HTTP/1.1 200 OK
Date : Tue,20 Sep 2005 02:15:38 GMT
Server: Apache/1.3.23 (Win32)
Last-Modified : Tue, 05 Aug 2003 17:00:00 GMT
Etag : “0-74d-3f2fe290”
Accept-Ranges : bytes
Content-Length : 1869
Connection : close
Content-Type : text/html
<html> ..... dan seterusnya

            Dari program diatas kita sudah dapat mengambil dokumen HTML seperti halnya pada telnet. Kelas Socket yang kita buat menggunakan konstruktor new Socket(host,port).

        Karena program ini bersifat Connection Oriented maka kita menggunakan kelas DataOutputStream untuk menulis data ke socket dan DataInputStream untuk membaca data dari socket. Pada contoh diatas kita menggunakan methode GET.

Tidak ada komentar:

Diberdayakan oleh Blogger.