4 import java.io.IOException;
5 import java.util.logging.Level;
6 import java.util.logging.Logger;
7 import org.apache.commons.httpclient.HttpClient;
8 import org.apache.commons.httpclient.cookie.CookiePolicy;
9 import org.apache.commons.httpclient.methods.PostMethod;
15 public class NicoHttpClient extends HttpClient {
17 static NicoHttpClient instance;
18 private static final String LOGIN_PAGE =
19 "https://secure.nicovideo.jp/secure/login?site=niconico";
21 private NicoHttpClient() {
26 public static NicoHttpClient getInstance() {
27 if (instance == null) {
28 return new NicoHttpClient();
35 * @param mail ログイン識別子(登録メールアドレス).
36 * @param password パスワード.
37 * @return 認証がOKであればtrue.
39 public boolean login(String mail, String password) {
41 PostMethod post = new PostMethod(LOGIN_PAGE);
44 post.addParameter("mail", mail);
45 post.addParameter("password", password);
46 post.addParameter("next_url", "");
47 post.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
51 // x-niconico-authflagで判定できそうだったが必ず0になる...
52 // Set-Cookieがあればログインできたとみなしているが,あまりよろしくないかも.
53 auth = (null != post.getResponseHeader("Set-Cookie")) ? true : false;
54 } catch (IOException ex) {
55 Logger.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);
57 post.releaseConnection();