Java Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Java Examples

Quick Start
Java Unicode
Java Certs
Java Email
Java Encryption
Java FTP
HTML-to-XML
Java HTTP
Java IMAP
Java MHT
Java MIME
Java RSA
Java S/MIME
Java Signatures
Java Socket
Java Spider
Java Tar
Java Upload
Java XML
Java XMP
Java Zip

More Examples...
Email Object
POP3
SMTP
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA

Unreleased...
Bzip2
LZW
Bz2
Icon

 

 

 

 

 

 

 

HTTPS Form Login

Using the del.icio.us site, demonstrates how to programmatically login via a form.

Download Chilkat Java Library

import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    CkHttpRequest req = new CkHttpRequest();
    CkHttp http = new CkHttp();

    boolean success;

    //  Any string unlocks the component for the 1st 30-days.
    success = http.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        System.out.println(http.lastErrorText());
        return;
    }

    //  Cookies may be persisted to a directory in the filesystem,
    //  or alternatively cached in memory by using the "memory"
    //  keyword:
    http.put_CookieDir("memory");
    //  Accumulated cookies are sent with each GET/POST:
    http.put_SaveCookies(true);
    //  Cookies received in HTTP responses are to be saved:
    http.put_SendCookies(true);

    //  Get the page with the login form.  We're only doing this
    //  just in case there are cookies that need to be cached
    //  and re-sent in the next step:
    String html;
    html = http.quickGetStr("https://secure.del.icio.us/login");
    if (http.get_LastStatus() != 200) {
        System.out.println(http.lastErrorText());
        return;
    }

    //  Examining the "Page Info" in FireFox reveals a form with
    //  a target of https://secure.del.icio.us/login with
    //  fields of "user_name", "password", and "login".  The "login"
    //  field is nothing more than the submit button and holds
    //  the value "log in".

    //  Build an HTTP POST Request:
    req.UsePost();
    req.put_Path("/login");
    req.AddParam("user_name","chilkatsoft");
    req.AddParam("password","****");
    req.AddParam("login","log in");

    //  Send the HTTP POST and get the response.  Note: This is a blocking call.
    //  The method does not return until the full HTTP response is received.
    String domain;
    int port;
    boolean ssl;
    domain = "secure.del.icio.us";
    port = (int) 443;
    ssl = true;
    CkHttpResponse resp;
    resp = http.SynchronousRequest(domain,port,ssl,req);
    if (resp == null ) {
        System.out.println(http.lastErrorText());
    }
    else {
        int responseStatus;
        responseStatus = (int) resp.get_StatusCode();
        if (responseStatus == 302) {

            //  We have a redirect.  Follow it...
            //  Note: the FollowRedirects property causes
            //  301/302 responses to GET requests to be
            //  automatically followed.
            http.put_FollowRedirects(true);
            html = http.quickGetStr(resp.getHeaderField("Location"));
            if (http.get_LastStatus() != 200) {
                System.out.println(http.lastErrorText());
                return;
            }

        }
        else {
            html = resp.bodyStr();
        }

        System.out.println(responseStatus);

        //  Display the HTML source of the page returned.
        System.out.println(html);

    }

  }
}

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.