Example usage for org.apache.http.client.methods HttpRequestBase setHeader

List of usage examples for org.apache.http.client.methods HttpRequestBase setHeader

Introduction

In this page you can find the example usage for org.apache.http.client.methods HttpRequestBase setHeader.

Prototype

public void setHeader(Header header) 

Source Link

Usage

From source file:org.bireme.cl.CheckUrl.java

public static int check(final String url, final boolean checkOnlyHeader) {
    if (url == null) {
        throw new NullPointerException();
    }/*  w  w w  . j  a va 2  s.c  om*/

    final CloseableHttpClient httpclient = HttpClients.createDefault();
    int responseCode = -1;

    try {
        final HttpRequestBase httpX = checkOnlyHeader ? new HttpHead(fixUrl(url)) : new HttpGet(fixUrl(url));
        //final HttpHead httpX = new HttpHead(fixUrl(url)); // Some servers return 500
        //final HttpGet httpX = new HttpGet(fixUrl(url));
        httpX.setConfig(CONFIG);
        httpX.setHeader(new BasicHeader("User-Agent", "Wget/1.16.1 (linux-gnu)"));
        httpX.setHeader(new BasicHeader("Accept", "*/*"));
        httpX.setHeader(new BasicHeader("Accept-Encoding", "identity"));
        httpX.setHeader(new BasicHeader("Connection", "Keep-Alive"));

        // Create a custom response handler
        final ResponseHandler<Integer> responseHandler = new ResponseHandler<Integer>() {

            @Override
            public Integer handleResponse(final HttpResponse response)
                    throws ClientProtocolException, IOException {
                return response.getStatusLine().getStatusCode();
            }
        };
        responseCode = httpclient.execute(httpX, responseHandler);
    } catch (Exception ex) {
        responseCode = getExceptionCode(ex);
    } finally {
        try {
            httpclient.close();
        } catch (Exception ioe) {
            System.err.println(ioe.getMessage());
        }
    }
    return (((responseCode == 403) || (responseCode == 500)) && checkOnlyHeader) ? check(url, false)
            : responseCode;
}

From source file:org.neo4j.ogm.drivers.http.request.HttpRequest.java

public static CloseableHttpResponse execute(CloseableHttpClient httpClient, HttpRequestBase request,
        Credentials credentials) throws HttpRequestException {

    LOGGER.debug("Thread: {}, request: {}", Thread.currentThread().getId(), request);

    CloseableHttpResponse response;//  ww w.  j  av  a 2s  . c o m

    request.setHeader(new BasicHeader(HTTP.CONTENT_TYPE, "application/json;charset=UTF-8"));
    request.setHeader(new BasicHeader(HTTP.USER_AGENT, "neo4j-ogm.java/2.0"));
    request.setHeader(new BasicHeader("Accept", "application/json;charset=UTF-8"));

    HttpAuthorization.authorize(request, credentials);

    // use defaults: 3 retries, 2 second wait between attempts
    RetryOnExceptionStrategy retryStrategy = new RetryOnExceptionStrategy();

    while (retryStrategy.shouldRetry()) {

        try {

            response = httpClient.execute(request);

            StatusLine statusLine = response.getStatusLine();
            HttpEntity responseEntity = response.getEntity();

            if (statusLine.getStatusCode() >= 300) {
                String responseText = statusLine.getReasonPhrase();
                if (responseEntity != null) {
                    responseText = parseError(EntityUtils.toString(responseEntity));
                    LOGGER.warn("Thread: {}, response: {}", Thread.currentThread().getId(), responseText);
                }
                throw new HttpResponseException(statusLine.getStatusCode(), responseText);
            }
            if (responseEntity == null) {
                throw new ClientProtocolException("Response contains no content");
            }

            return response; // don't close response yet, it is not consumed!
        }

        // if we didn't get a response at all, try again
        catch (NoHttpResponseException nhre) {
            LOGGER.warn("Thread: {}, No response from server:  Retrying in {} milliseconds, retries left: {}",
                    Thread.currentThread().getId(), retryStrategy.getTimeToWait(),
                    retryStrategy.numberOfTriesLeft);
            retryStrategy.errorOccurred();
        } catch (RetryException re) {
            throw new HttpRequestException(request, re);
        } catch (ClientProtocolException uhe) {
            throw new ConnectionException(request.getURI().toString(), uhe);
        } catch (IOException ioe) {
            throw new HttpRequestException(request, ioe);
        }

        // here we catch any exception we throw above (plus any we didn't throw ourselves),
        // log the problem, close any connection held by the request
        // and then rethrow the exception to the caller.
        catch (Exception exception) {
            LOGGER.warn("Thread: {}, exception: {}", Thread.currentThread().getId(),
                    exception.getCause().getLocalizedMessage());
            request.releaseConnection();
            throw exception;
        }
    }
    throw new RuntimeException("Fatal Exception: Should not have occurred!");
}

From source file:org.house.service.spider.WebSpider.java

private static void setAjaxRequestHeader(final HttpRequestBase HttpRequestBase) {
    HttpRequestBase.setHeader(new BasicHeader("Accept",
            "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"));
    HttpRequestBase.setHeader(new BasicHeader("Accept-Encoding", "gzip, deflate"));
    HttpRequestBase.setHeader(new BasicHeader("Accept-Language", "en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4"));
    HttpRequestBase.setHeader(new BasicHeader("Cache-Control", "max-age=0"));
    HttpRequestBase.setHeader(new BasicHeader("Host", "www.laho.gov.cn"));
    HttpRequestBase.setHeader(new BasicHeader("User-Agent",
            "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"));
}

From source file:org.house.service.spider.WebSpider.java

private static void setRequestHeader(final HttpRequestBase HttpRequestBase, final String referer) {
    HttpRequestBase.setHeader(new BasicHeader("Accept",
            "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"));
    HttpRequestBase.setHeader(new BasicHeader("Accept-Encoding", "gzip, deflate"));
    HttpRequestBase.setHeader(new BasicHeader("Accept-Language", "en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4"));
    HttpRequestBase.setHeader(new BasicHeader("Cache-Control", "max-age=0"));
    HttpRequestBase.setHeader(new BasicHeader("Content-Type", "application/x-www-form-urlencoded"));
    HttpRequestBase.setHeader(new BasicHeader("Host", "www.laho.gov.cn"));
    HttpRequestBase.setHeader(new BasicHeader("Origin", "http://www.laho.gov.cn"));
    HttpRequestBase.setHeader(new BasicHeader("Referer", referer));
    HttpRequestBase.setHeader(new BasicHeader("User-Agent",
            "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"));
}

From source file:net.paissad.waqtsalat.service.utils.HttpUtils.java

private static HttpRequestBase getNewHttpRequest(final String url, final RequestType requestType,
        final Header[] additionalRequestHeaders) {

    HttpRequestBase request = null;
    if (requestType == RequestType.HEAD) {
        request = new HttpHead(url);
    } else if (requestType == RequestType.GET) {
        request = new HttpGet(url);
    } else {//from   ww w.  jav a2  s.  com
        throw new IllegalStateException("The 'RequestType' " + requestType + " is not supported yet !");
    }
    request.addHeader("User-Agent", WSConstants.WS_USER_AGENT);
    if (additionalRequestHeaders != null && additionalRequestHeaders.length > 0) {
        for (Header aHeader : additionalRequestHeaders) {
            request.setHeader(aHeader);
        }
    }

    return request;
}

From source file:eu.prestoprime.p4gui.connection.P4HttpClient.java

public HttpResponse executeRequest(HttpRequestBase request) throws IOException {
    // set userID
    request.setHeader(new BasicHeader("userID", this.userID));

    // disable redirect handling
    HttpParams params = new BasicHttpParams();
    params.setParameter(ClientPNames.HANDLE_REDIRECTS, false);
    request.setParams(params);//ww  w  .  j  a  v  a2  s  .com

    // execute request
    HttpResponse response = super.execute(request);

    // check redirect
    if (redirectCodes.contains(response.getStatusLine().getStatusCode())) {
        logger.debug("Redirecting...");

        // get newURL
        String newURL = response.getFirstHeader("Location").getValue();

        // create newRequest
        try {
            HttpUriRequest newRequest = request.getClass().getDeclaredConstructor(String.class)
                    .newInstance(newURL);

            // copy entity
            if (request instanceof HttpEntityEnclosingRequestBase) {
                HttpEntity entity = ((HttpEntityEnclosingRequestBase) request).getEntity();
                if (entity != null) {
                    logger.debug("Cloning entity...");

                    ((HttpEntityEnclosingRequestBase) newRequest).setEntity(entity);
                }
            }

            // set userID
            newRequest.setHeader(new BasicHeader("userID", this.userID));

            // retry
            response = new P4HttpClient(userID).execute(newRequest);
        } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException
                | InstantiationException e) {
            e.printStackTrace();
        }
    }

    return response;
}

From source file:org.neo4j.ogm.session.transaction.TransactionManager.java

private HttpResponse executeRequest(HttpRequestBase request) {

    try {/*from   w  w w . j  av a 2  s  . c  o  m*/

        request.setHeader(new BasicHeader("Accept", "application/json;charset=UTF-8"));
        HttpRequestAuthorization.authorize(request, credentials);

        HttpResponse response = httpClient.execute(request);
        StatusLine statusLine = response.getStatusLine();

        logger.debug("Status code: {}", statusLine.getStatusCode());

        if (statusLine.getStatusCode() >= 300) {
            throw new HttpResponseException(statusLine.getStatusCode(), statusLine.getReasonPhrase());
        }

        HttpEntity responseEntity = response.getEntity();
        if (responseEntity != null) {
            String responseText = EntityUtils.toString(responseEntity);
            logger.debug(responseText);
            EntityUtils.consume(responseEntity);
            if (responseText.contains("\"errors\":[{") || responseText.contains("\"errors\": [{")) {
                throw new ErrorsException(responseText);
            }
        }
        return response;
    }

    catch (Exception e) {
        throw new ResultProcessingException("Failed to execute request: ", e);
    }

    // always clean up the connection and the thread-local transaction instance;
    finally {
        request.releaseConnection();
        transaction.remove();
    }
}

From source file:com.ibm.watson.developer_cloud.professor_languo.ingestion.indexing.WatsonSolrClient.java

/**
 * Include authentication info in execute method
 *//*from   www . j a va 2 s.c om*/
@Override
protected NamedList<Object> executeMethod(HttpRequestBase method, ResponseParser parser)
        throws SolrServerException {
    Base64 b = new Base64();
    String encoded = b.encodeAsString(new String(userPass).getBytes());
    method.setHeader(new BasicHeader("Authorization", "Basic " + encoded));
    return super.executeMethod(method, parser);
}

From source file:org.openlmis.UiUtils.HttpClient.java

private void prepareRequestHeaderAndEntity(String commMethod, String json, HttpRequestBase httpRequest,
        boolean headerRequired) throws UnsupportedEncodingException {
    if (commMethod.equals(GET))
        return;// w  w  w . jav  a 2 s .c o  m

    httpRequest.setHeader(new BasicHeader("Content-Type", "application/json;charset=UTF-8"));
    ((HttpEntityEnclosingRequestBase) httpRequest).setEntity(new StringEntity(json));

    if (!headerRequired) {
        Header[] headers = httpRequest.getAllHeaders();
        for (Header h : headers) {
            httpRequest.removeHeader(h);
        }
    }
}

From source file:com.kappaware.logtrawler.output.httpclient.HttpClient.java

public String exec(HttpRequestBase request, ContentType contentType, String requestData, List<Header> headers)
        throws HttpClientException {
    if (headers != null) {
        for (Header h : headers) {
            request.setHeader(h);
        }//from   www . j  ava 2  s  .  c  o m
    }
    if (requestData != null) {
        ((HttpEntityEnclosingRequestBase) request).setEntity(new StringEntity(requestData, contentType));
    }
    CloseableHttpResponse response = null;
    try {
        response = httpclient.execute(request);
        int statusCode = response.getStatusLine().getStatusCode();
        if (statusCode == 404 && this.on404 == On404.NULL_ON_GET && request.getMethod().equals("GET")) {
            return null;
        }
        if (statusCode >= 200 && statusCode < 300) {
            return getEntity(response);
        } else {
            request.getURI();
            throw new HttpClientException("Unexpected HTTP Response code", request.getMethod(),
                    request.getURI(), requestData, response.getStatusLine().getStatusCode(),
                    response.getStatusLine().getReasonPhrase(), getEntity(response));
        }
    } catch (Exception e) {
        if (e instanceof HttpClientException) {
            throw (HttpClientException) e;
        } else {
            throw new HttpClientException("Exception in HTTP Client", request.getMethod(), request.getURI(),
                    requestData, e);
        }
    } finally {
        if (response != null) {
            try {
                response.close();
            } catch (IOException e) {
            }
        }
    }
}