Example usage for org.apache.http.impl.client BasicCookieStore BasicCookieStore

List of usage examples for org.apache.http.impl.client BasicCookieStore BasicCookieStore

Introduction

In this page you can find the example usage for org.apache.http.impl.client BasicCookieStore BasicCookieStore.

Prototype

public BasicCookieStore() 

Source Link

Usage

From source file:teletype.model.vk.Auth.java

public void authorize() throws VKAuthException, IOException {

    // Phase 1. Send authorization request.
    // Opening OAuth Authorization Dialog
    URIBuilder uriBuilder = new URIBuilder();
    uriBuilder.setScheme("https").setHost("oauth.vk.com").setPath("/authorize").setParameter("client_id", appID)
            .setParameter("scope", "messages,friends,status")
            .setParameter("redirect_uri", "https://oauth.vk.com/blank.html").setParameter("display", "wap")
            .setParameter("v", "5.28").setParameter("response_type", "token");

    BasicCookieStore cookieStore = new BasicCookieStore();
    HttpClient httpClient = HttpClientBuilder.create().setDefaultCookieStore(cookieStore).build();
    URI uri = getUri(uriBuilder);
    HttpPost request = new HttpPost(uri);
    HttpResponse response = httpClient.execute(request);
    request.abort();//from ww  w . j  ava 2s . c o  m

    // Get ip_h and to_h parameters for next request 
    StringBuilder contentText = getContentText(response);

    String ip_h = parseResponse(contentText, "ip_h", 18);
    //System.out.println("ip_h : " + ip_h);

    String to_h = parseResponse(contentText, "=\"to\"", 212);
    //System.out.println("to_h : " + to_h);

    uriBuilder = new URIBuilder();
    uriBuilder.setScheme("https").setHost("login.vk.com").setPath("/").setParameter("act", "login")
            .setParameter("soft", "1").setParameter("q", "1").setParameter("ip_h", ip_h)
            .setParameter("from_host", "oauth.vk.com").setParameter("to", to_h).setParameter("expire", "0")
            .setParameter("email", login).setParameter("pass", password);

    request = new HttpPost(getUri(uriBuilder));
    response = httpClient.execute(request);
    request.abort();

    //System.out.println("Incorrect login url: " + uriBuilder.toString());

    // Phase 2. Providing Access Permissions
    // TODO: if got access request then call externall web browser. possible do it ourselves.

    // Phase 3. Open url with webengine and receiving "access_token".
    // It does not work with httpClient
    LoginControllerHelper.callHiddenWebBrowser(uriBuilder.toString());

    //if (true) return;

    /*
    printHeader(response);
            
    // Phase 2. Got redirect to authorization page.
    // Filling the form and sending it.
    //String HeaderLocation = response.getFirstHeader("location").getValue();
    request = new HttpPost(HeaderLocation);
    response = httpClient.execute(request);
    //System.out.println("==================>");
    request.abort();
    //String url = response.getFirstHeader("location").getValue();
            
    // Phase 3. Got permissions request.
    // Open web browser and sending link there.
    //System.out.println("URL is: " + url);
    // Calling externall web browser.
    ControllerHelper.callHiddenWebBrowser(url);
    //ControllerHelper.callWebBrowser(url);
            
    /*
     * It works by calling external web-browser.
     * All redirects ok and gives the token.
     * But doesn't work using HttpClient.
     * Server redirects me to error page.
     *
            
    request = new HttpPost(url);
    response = httpClient.execute(request);
    System.out.println("Sending last ==================>\n");
            
    HeaderLocation = response.getFirstHeader("location").getValue();
            
    //String access_token = HeaderLocation.split("#")[1].split("&")[0].split("=")[1];
    System.out.println("Header is: " + HeaderLocation);
    */
}

From source file:edu.mit.scratch.ScratchUserManager.java

public void clearMessages() throws ScratchUserException {
    try {//from  w  w  w  . j a  v a2 s.c  om
        final RequestConfig globalConfig = RequestConfig.custom().setCookieSpec(CookieSpecs.DEFAULT).build();

        final CookieStore cookieStore = new BasicCookieStore();
        final BasicClientCookie lang = new BasicClientCookie("scratchlanguage", "en");
        lang.setDomain(".scratch.mit.edu");
        lang.setPath("/");
        cookieStore.addCookie(lang);

        final CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(globalConfig)
                .setUserAgent(Scratch.USER_AGENT).setDefaultCookieStore(cookieStore).build();
        final HttpUriRequest update = RequestBuilder.get()
                .setUri("https://scratch.mit.edu/messages/ajax/messages-clear/")
                .addHeader("Accept",
                        "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8")
                .addHeader("Referer", "https://scratch.mit.edu").addHeader("Origin", "https://scratch.mit.edu")
                .addHeader("Accept-Encoding", "gzip, deflate, sdch")
                .addHeader("Accept-Language", "en-US,en;q=0.8").addHeader("Content-Type", "application/json")
                .addHeader("X-Requested-With", "XMLHttpRequest")
                .addHeader("Cookie",
                        "scratchsessionsid=" + this.session.getSessionID() + "; scratchcsrftoken="
                                + this.session.getCSRFToken())
                .addHeader("X-CSRFToken", this.session.getCSRFToken()).build();

        httpClient.execute(update);
    } catch (final Exception e) {
        throw new ScratchUserException();
    }
}

From source file:org.s1.testing.httpclient.TestHttpClient.java

/**
 *
 * @param schema//from w  w  w.  jav  a2  s.  co  m
 * @param host
 * @param port
 */
public TestHttpClient(String schema, String host, int port) {
    //System.setProperty("javax.net.debug", "ssl");
    this.client = new DefaultHttpClient();
    this.context = new BasicHttpContext();
    this.host = new HttpHost(host, port, schema);

    CookieStore cookieStore = new BasicCookieStore();
    context.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
}

From source file:edu.usu.sdl.apiclient.AbstractService.java

/**
 * Connect to server if not already connected
 *//*from www  .  j  ava2  s.co m*/
public void connect() {
    if (httpclient == null) {
        cookieStore = new BasicCookieStore();
        httpclient = HttpClients.custom().setDefaultCookieStore(cookieStore).build();

        logon();
        connected = true;
    }
}

From source file:org.rapidoid.http.HttpClientUtil.java

static CloseableHttpAsyncClient client(HttpClient client) {

    ConnectionReuseStrategy reuseStrategy = client.reuseConnections() ? new DefaultConnectionReuseStrategy()
            : new NoConnectionReuseStrategy();

    HttpAsyncClientBuilder builder = HttpAsyncClients.custom()
            .setThreadFactory(new RapidoidThreadFactory("http-client")).disableConnectionState()
            .disableAuthCaching().setMaxConnPerRoute(client.maxConnPerRoute())
            .setMaxConnTotal(client.maxConnTotal()).setConnectionReuseStrategy(reuseStrategy)
            .setRedirectStrategy(client.followRedirects() ? new DefaultRedirectStrategy() : NO_REDIRECTS);

    if (!U.isEmpty(client.cookies())) {
        BasicCookieStore cookieStore = new BasicCookieStore();

        for (Map.Entry<String, String> e : client.cookies().entrySet()) {
            BasicClientCookie cookie = new BasicClientCookie(e.getKey(), e.getValue());

            String host = client.host();
            U.notNull(host, "HTTP client host");

            cookie.setDomain(getDomain(host));
            cookie.setPath("/");
            cookieStore.addCookie(cookie);
        }/*w ww  . j a  v  a  2s. c om*/

        builder = builder.setDefaultCookieStore(cookieStore);
    }

    if (client.userAgent() != null) {
        builder = builder.setUserAgent(client.userAgent());
    }

    if (!client.keepCookies() && U.isEmpty(client.cookies())) {
        builder = builder.disableCookieManagement();
    }

    return builder.build();
}

From source file:mx.clickfactura.util.TipoCambioUtil.java

public String getTipoCambio(String fecha) throws CustomBadRequestException, CustomNotFoundException, Exception {

    Pattern pattern = Pattern.compile("^\\d{4}\\-\\d{2}\\-\\d{2}$");
    Matcher matcher = null;//from  w w  w .j  a  v  a2  s.  c  o m

    matcher = pattern.matcher(fecha.trim());

    if (!matcher.matches()) {
        throw new CustomBadRequestException("Fecha invalida, el formato debe ser: yyyy-MM-dd");
    }

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

    Calendar cal = new GregorianCalendar();

    cal.setTime(sdf.parse(fecha));

    String dia = (cal.get(Calendar.DATE) < 10) ? "0" + cal.get(Calendar.DATE) : cal.get(Calendar.DATE) + "";
    String mes = ((cal.get(Calendar.MONTH) + 1) < 10) ? "0" + (cal.get(Calendar.MONTH) + 1)
            : (cal.get(Calendar.MONTH) + 1) + "";
    String anio = cal.get(Calendar.YEAR) + "";

    String fechaInicial = dia + "%2F" + mes + "%2F" + anio;

    CloseableHttpClient client = HttpClients.createDefault();
    CookieStore cookies = new BasicCookieStore();
    String[] fechaSeparada = fecha.split("-");
    HttpGet get = new HttpGet("http://www.dof.gob.mx/indicadores_detalle.php?cod_tipo_indicador=158&dfecha="
            + fechaInicial + "&hfecha=" + fechaInicial);

    HttpContext httpContext = new BasicHttpContext();
    httpContext.setAttribute(HttpClientContext.COOKIE_STORE, cookies);
    CloseableHttpResponse response = client.execute(get, httpContext);

    //System.out.println(response.toString());      
    //System.out.println(response.getStatusLine());
    //System.out.println(response.getEntity().getContentLength());
    InputStream in = response.getEntity().getContent();
    Header encoding = response.getEntity().getContentEncoding();

    String body = IOUtils.toString(in, "UTF-8");
    //System.out.println(body);

    Document doc = Jsoup.parse(body, "UTF-8");

    doc = doc.normalise();

    //System.out.println(doc.toString());
    Elements e = doc.select("table");

    Iterator iterator = e.iterator();

    pattern = Pattern.compile("^\\d{2}\\.\\d{6}$");
    matcher = null;

    String tipoCambio = null;

    while (iterator.hasNext()) {
        Element xd = (Element) iterator.next();
        if (xd.getElementsByClass("txt").hasAttr("height")) {
            if (xd.getElementsByClass("txt").text().split(" ").length == 6) {

                String cambio = xd.getElementsByClass("txt").text().split(" ")[5];
                matcher = pattern.matcher(cambio.trim());

                if (matcher.matches()) {
                    tipoCambio = cambio;
                    //System.out.println(tipoCambio);
                    break;
                }

            }

        }

    }

    client.close();
    response.close();

    if (tipoCambio == null || tipoCambio.isEmpty()) {
        throw new CustomNotFoundException("No hay un tipo de cambio para el da: " + fecha);

    }

    return tipoCambio;

}

From source file:com.flowzr.export.FlowzrIntegrationTest.java

@Override
public void setUp() throws Exception {
    super.setUp();

    FlowzrSyncEngine.FLOWZR_BASE_URL = "http://" + LAN_IP + ":8080/";
    FlowzrSyncEngine.FLOWZR_API_URL = "http://" + LAN_IP + ":8080/financisto3/";

    context = getInstrumentation().getTargetContext();

    BasicCookieStore cookieStore = new BasicCookieStore();
    HttpGet request = getAuthenticateRequest("/");

    this.http_client = new DefaultHttpClient();
    this.dba = new DatabaseAdapter(context);

    FlowzrSyncEngine.dba = this.dba;
    FlowzrSyncEngine.db = this.dba.db();
    FlowzrSyncEngine.em = this.dba.em();

    FlowzrSyncEngine.nsString = TEST_ACCOUNT.replace("@", "_");

    FlowzrSyncEngine.http_client = this.http_client;

    FlowzrSyncEngine.last_sync_ts = 1;/* w w  w  .j  a  v a  2  s  . c o m*/
    FlowzrSyncEngine.resetLastTime(context);
    FlowzrSyncEngine.isCanceled = false;
    FlowzrSyncEngine.isRunning = false;
    FlowzrSyncEngine.startTimestamp = System.currentTimeMillis();
    db = dba.db();
    em = dba.em();

}

From source file:org.keycloak.testsuite.oauth.LoginStatusIframeEndpointTest.java

@Test
public void checkIframe() throws IOException {
    CookieStore cookieStore = new BasicCookieStore();

    try (CloseableHttpClient client = HttpClients.custom().setDefaultCookieStore(cookieStore).build()) {
        String redirectUri = URLEncoder.encode(
                suiteContext.getAuthServerInfo().getContextRoot() + "/auth/admin/master/console", "UTF-8");

        HttpGet get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/auth?response_type=code&client_id="
                + Constants.ADMIN_CONSOLE_CLIENT_ID + "&redirect_uri=" + redirectUri);

        CloseableHttpResponse response = client.execute(get);
        String s = IOUtils.toString(response.getEntity().getContent(), "UTF-8");
        response.close();//from ww w . j  a  v a  2 s  . com

        String action = ActionURIUtils.getActionURIFromPageSource(s);

        HttpPost post = new HttpPost(action);

        List<NameValuePair> params = new LinkedList<>();
        params.add(new BasicNameValuePair("username", "admin"));
        params.add(new BasicNameValuePair("password", "admin"));

        post.setHeader("Content-Type", "application/x-www-form-urlencoded");
        post.setEntity(new UrlEncodedFormEntity(params));

        response = client.execute(post);

        assertEquals("CP=\"This is not a P3P policy!\"", response.getFirstHeader("P3P").getValue());

        Header setIdentityCookieHeader = null;
        Header setSessionCookieHeader = null;
        for (Header h : response.getAllHeaders()) {
            if (h.getName().equals("Set-Cookie")) {
                if (h.getValue().contains("KEYCLOAK_SESSION")) {
                    setSessionCookieHeader = h;

                } else if (h.getValue().contains("KEYCLOAK_IDENTITY")) {
                    setIdentityCookieHeader = h;
                }
            }
        }
        assertNotNull(setIdentityCookieHeader);
        assertTrue(setIdentityCookieHeader.getValue().contains("HttpOnly"));

        assertNotNull(setSessionCookieHeader);
        assertFalse(setSessionCookieHeader.getValue().contains("HttpOnly"));

        response.close();

        Cookie sessionCookie = null;
        for (Cookie cookie : cookieStore.getCookies()) {
            if (cookie.getName().equals("KEYCLOAK_SESSION")) {
                sessionCookie = cookie;
                break;
            }
        }
        assertNotNull(sessionCookie);

        get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/login-status-iframe.html");
        response = client.execute(get);

        assertEquals(200, response.getStatusLine().getStatusCode());
        s = IOUtils.toString(response.getEntity().getContent(), "UTF-8");
        assertTrue(s.contains("function getCookie()"));

        assertEquals("CP=\"This is not a P3P policy!\"", response.getFirstHeader("P3P").getValue());

        response.close();

        get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/login-status-iframe.html/init");
        response = client.execute(get);
        assertEquals(403, response.getStatusLine().getStatusCode());
        response.close();

        get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/login-status-iframe.html/init?"
                + "client_id=invalid" + "&origin=" + suiteContext.getAuthServerInfo().getContextRoot());
        response = client.execute(get);
        assertEquals(403, response.getStatusLine().getStatusCode());
        response.close();

        get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/login-status-iframe.html/init?" + "client_id="
                + Constants.ADMIN_CONSOLE_CLIENT_ID + "&origin=http://invalid");
        response = client.execute(get);
        assertEquals(403, response.getStatusLine().getStatusCode());
        response.close();

        get = new HttpGet(suiteContext.getAuthServerInfo().getContextRoot()
                + "/auth/realms/master/protocol/openid-connect/login-status-iframe.html/init?" + "client_id="
                + Constants.ADMIN_CONSOLE_CLIENT_ID + "&origin="
                + suiteContext.getAuthServerInfo().getContextRoot());
        response = client.execute(get);
        assertEquals(204, response.getStatusLine().getStatusCode());
        response.close();
    }
}

From source file:io.undertow.servlet.test.session.ServletURLRewritingSessionTestCase.java

@Test
public void testURLRewriting() throws IOException {
    TestHttpClient client = new TestHttpClient();
    client.setCookieStore(new BasicCookieStore());
    try {/*from   w w  w  .j  a v  a 2s.  com*/
        HttpGet get = new HttpGet(DefaultServer.getDefaultServerURL() + "/servletContext/foo;foo=bar");
        HttpResponse result = client.execute(get);
        Assert.assertEquals(StatusCodes.OK, result.getStatusLine().getStatusCode());
        String url = HttpClientUtils.readResponse(result);
        Header[] header = result.getHeaders(COUNT);
        Assert.assertEquals("0", header[0].getValue());

        get = new HttpGet(url);
        result = client.execute(get);
        Assert.assertEquals(StatusCodes.OK, result.getStatusLine().getStatusCode());
        url = HttpClientUtils.readResponse(result);
        header = result.getHeaders(COUNT);
        Assert.assertEquals("1", header[0].getValue());

        get = new HttpGet(url);
        result = client.execute(get);
        Assert.assertEquals(StatusCodes.OK, result.getStatusLine().getStatusCode());
        url = HttpClientUtils.readResponse(result);
        header = result.getHeaders(COUNT);
        Assert.assertEquals("2", header[0].getValue());

    } finally {
        client.getConnectionManager().shutdown();
    }
}

From source file:sft.LoginAndBookSFT.java

public void startBooking() throws URISyntaxException, MalformedURLException, ProtocolException, IOException {
    final BasicCookieStore cookieStore = new BasicCookieStore();
    final CloseableHttpClient httpclient = HttpClients.custom().setDefaultCookieStore(cookieStore).build();
    try {//from   ww w  .  ja v  a 2  s .  co  m
        // get cookie
        final HttpGet httpget = new HttpGet("https://sft.ticketack.com");
        final CloseableHttpResponse response1 = httpclient.execute(httpget);
        try {
            final HttpEntity entity = response1.getEntity();

            System.out.println("Login form get: " + response1.getStatusLine());
            EntityUtils.consume(entity);

            System.out.println("Initial set of cookies:");
            final List<Cookie> _cookies = cookieStore.getCookies();
            if (_cookies.isEmpty()) {
                System.out.println("None");
            } else {
                for (int i = 0; i < _cookies.size(); i++) {
                    System.out.println("- " + _cookies.get(i).toString());
                }
            }
        } finally {
            response1.close();
        }

        // login
        final HttpUriRequest login = RequestBuilder.post()
                .setUri(new URI("https://sft.ticketack.com/ticket/view/"))
                .addParameter("ticket_number", username).addParameter("ticket_key", password).build();
        final CloseableHttpResponse response2 = httpclient.execute(login);
        try {
            final HttpEntity entity = response2.getEntity();

            System.out.println("Login form get: " + response2.getStatusLine());
            EntityUtils.consume(entity);

            System.out.println("Post logon cookies:");
            final List<Cookie> cookies = cookieStore.getCookies();
            if (cookies.isEmpty()) {
                System.out.println("None");
            } else {
                for (int i = 0; i < cookies.size(); i++) {
                    // System.out.println("- " + cookies.get(i).toString());
                }
            }
        } finally {
            response2.close();
        }
    } finally {
        httpclient.close();
    }

    final Cookie _cookie = cookieStore.getCookies().get(0);
    final String mightyCooke = "PHPSESSID=" + _cookie.getValue();

    for (final String _booking : bookings) {

        // get free seatings
        // json https://sft.ticketack.com/screening/infos_json/02c101f9-c62a-445e-ad72-19fb32db34c0
        final String _json = doGet(mightyCooke, _booking, "https://sft.ticketack.com/screening/infos_json/");

        final Gson gson = new Gson();
        final Example _allInfos = gson.fromJson(_json, Example.class);

        if (_allInfos.getCinemaHall().getMap() != null) {

            final String _mySeat = getMeAFreeSeat(_json);

            // book on seating
            // 02c101f9-c62a-445e-ad72-19fb32db34c0?format=json&overbook=false&seat=Parkett%20Rechts:1:16
            try {
                if (_mySeat != null)
                    doGet(mightyCooke,
                            _booking + "?format=json&overbook=true&seat=" + URLEncoder.encode(_mySeat, "UTF-8"),
                            "https://sft.ticketack.com/screening/book_on_ticket/");
            } catch (final MalformedURLException exception) {
                System.err.println("Error: " + exception.getMessage());
            } catch (final ProtocolException exception) {
                System.err.println("Error: " + exception.getMessage());
            } catch (final UnsupportedEncodingException exception) {
                System.err.println("Error: " + exception.getMessage());
            } catch (final IOException exception) {
                System.err.println("Error: " + exception.getMessage());
            }
            System.out.println("booking (seat) done for: " + _booking);

        } else {

            // book
            // https://sft.ticketack.com/screening/book_on_ticket/76c039cc-d1d5-40a1-9a5d-2b1cd4c47799
            // Cookie:PHPSESSID=s1a6a8casfhidfq68tqn2cb565
            doGet(mightyCooke, _booking, "https://sft.ticketack.com/screening/book_on_ticket/");
            System.out.println("booking done for: " + _booking);
        }

    }

    System.out.println("All done!");

}