トレードロボットを研究・開発しオープンソースソフトウェアとして公開!

/ トップページ / RobotTraderLibraryのダウンロード / クリック証券WebサービスログインのサンプルJavaソース

クリック証券WebサービスログインのサンプルJavaソース


クリック証券のWebサービスは2009年2月14日をもって終了となりました。

RobotTraderLibraryを使って作成したクリック証券WebサービスログインのサンプルJavaソースです。
protected boolean login(String p_accountNo, String p_loginPassword) {
    try {
        Web web = new Web();
        // 自動リダイレクトを解除します
        web.setAutoRedirects(false);
        // シーケンス1 − トップページ
        HttpHeaderList headers1 = new HttpHeaderList();
        String htmlText = web.postHtml(UrlClickSec.topPage(), "u=" + p_accountNo,"UTF-8", headers1);
        // シーケンス2 − リダイレクト
        HttpHeader cookie1 = web.createCookie();
        headers1.add(cookie1);
        String nextUrl = web.getResponseHeaderValue("Location");
        htmlText = web.getHtml(nextUrl, "UTF-8", headers1);
        // 正常終了か判定します
        if (htmlText.indexOf("<responseStatus>OK</responseStatus>")<0) {
            return false;
        }
        // シーケンス1と2で得たCookieを結合します
        HttpHeader loginCookie = web.createCookie();
        loginCookie.setValue(cookie1.getValue() + loginCookie.getValue());
        HttpHeaderList headers2 = new HttpHeaderList();
        headers2.add(loginCookie);
        // シーケンス3
        nextUrl = web.getDirectry() + "/ws-login";
        String queryString = "j_username=" + p_accountNo + "&j_password=" + p_loginPassword;
        htmlText = web.postHtml(nextUrl, queryString,"UTF-8", headers2);
        // 自動リダイレクトに戻します
        web.setAutoRedirects(true);
        // シーケンス4〜5
        nextUrl = web.getResponseHeaderValue("Location");
        htmlText = web.getHtml(nextUrl, "UTF-8", headers2);
        // 正常終了か判定します
        if (htmlText.indexOf("<responseStatus>OK</responseStatus>")>=0) {
            return true;
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
    return false;
}

Copyright (C) 2008 RobotBrain. All Rights Reserved  jp.robotbrain@gmail.com