List of usage examples for org.apache.http.client.methods RequestBuilder addHeader
public RequestBuilder addHeader(final String name, final String value)
From source file:com.aliyun.api.gateway.demo.Client.java
/** * ??/*w w w .j ava 2 s . c o m*/ * * @param request * requestnull{@link NullPointerException} * @return HttpResponse HTTP? * @throws IOException * HTTP? * @throws ClientProtocolException * ???? */ public HttpResponse execute(Request request) throws ClientProtocolException, IOException { if (request == null) { return null; } RequestBuilder requestBuilder = request.getMethod().requestbuilder().setUri(request.getUrl().toString()); requestBuilder .setConfig(RequestConfig.custom().setConnectTimeout(getTimeout(request.getTimeout())).build()); requestBuilder.addHeader(SystemHeader.X_CA_TIMESTAMP, String.valueOf(System.currentTimeMillis())); requestBuilder.addHeader(SystemHeader.X_CA_NONCE, UUID.randomUUID().toString()); requestBuilder.addHeader(SystemHeader.X_CA_KEY, appKey); if (testEnv) { requestBuilder.addHeader(SystemHeader.X_CA_STAGE, "test"); } requestBuilder.build().getAllHeaders(); initialBasicHeader(requestBuilder, request.getHeaders(), request.getUrl(), request.getFormBody(), request.getSignHeaderPrefixes()); HttpEntity entity = getEntity(request); if (entity != null) { requestBuilder.setEntity(entity); } return httpClient.execute(requestBuilder.build()); }
From source file:cn.vlabs.duckling.vwb.service.ddl.RestClient.java
private HttpUriRequest buildUriRequest(String url, String token, String... params) throws URISyntaxException { RequestBuilder rb = RequestBuilder.get().setUri(new URI(url)); if (params != null && params.length % 2 == 0) { for (int i = 0; i < params.length / 2; i++) { rb.addParameter(params[i * 2], params[i * 2 + 1]); }// www . j a v a2 s . c om } rb.addHeader("accept", "application/json"); rb.addHeader("Authorization", "Bearer " + token); HttpUriRequest uriRequest = rb.build(); return uriRequest; }
From source file:org.springframework.cloud.sleuth.instrument.zuul.ApacheHttpClientRibbonRequestCustomizer.java
@Override protected SpanTextMap toSpanTextMap(final RequestBuilder context) { return new SpanTextMap() { @Override//from w w w .j a v a 2 s . c om public Iterator<Map.Entry<String, String>> iterator() { Map<String, String> map = new HashMap<>(); for (Header header : context.build().getAllHeaders()) { map.put(header.getName(), header.getValue()); } return map.entrySet().iterator(); } @Override public void put(String key, String value) { context.addHeader(key, value); } }; }
From source file:com.restfiddle.handler.http.auth.BasicAuthHandler.java
public void setBasicAuthWithBase64Encode(RfRequestDTO requestDTO, RequestBuilder requestBuilder) { BasicAuthDTO basicAuthDTO = requestDTO.getBasicAuthDTO(); if (basicAuthDTO == null) { return;/*from w w w.j a v a 2 s.c o m*/ } String userName = basicAuthDTO.getUsername(); String password = basicAuthDTO.getPassword(); if (userName == null || userName.isEmpty() || password == null || password.isEmpty()) { return; } String authStr = userName + ":" + password; String encodedAuth = (new BASE64Encoder()).encode(authStr.getBytes()); requestBuilder.addHeader(HttpHeaders.AUTHORIZATION, "Basic " + encodedAuth); }
From source file:org.daybreak.coccinella.webmagic.ImageDownloader.java
@Override public Page download(Request request, Task task) { Site site = null;// ww w.jav a 2s .co m if (task != null) { site = task.getSite(); } Set<Integer> acceptStatCode; String charset = null; Map<String, String> headers = null; if (site != null) { acceptStatCode = site.getAcceptStatCode(); charset = site.getCharset(); headers = site.getHeaders(); } else { acceptStatCode = Sets.newHashSet(200); } logger.info("downloading image " + request.getUrl()); RequestBuilder requestBuilder; if (request instanceof CrawlerRequest) { CrawlerRequest crawlerRequest = (CrawlerRequest) request; try { requestBuilder = RequestBuilder.post().setUri(crawlerRequest.getUrl()) .setEntity(crawlerRequest.createEntity()); } catch (UnsupportedEncodingException ex) { logger.warn("The encoding is not supported: " + crawlerRequest.getCrawler().getEncode()); return null; } } else { requestBuilder = RequestBuilder.get().setUri(request.getUrl()); } if (headers != null) { for (Map.Entry<String, String> headerEntry : headers.entrySet()) { requestBuilder.addHeader(headerEntry.getKey(), headerEntry.getValue()); } } RequestConfig.Builder requestConfigBuilder = RequestConfig.custom() .setConnectionRequestTimeout(site.getTimeOut()).setSocketTimeout(site.getTimeOut()) .setConnectTimeout(site.getTimeOut()).setCookieSpec(CookieSpecs.BEST_MATCH); if (site != null && site.getHttpProxy() != null) { requestConfigBuilder.setProxy(site.getHttpProxy()); } requestBuilder.setConfig(requestConfigBuilder.build()); CloseableHttpResponse httpResponse = null; try { httpResponse = getHttpClient(site).execute(requestBuilder.build()); int statusCode = httpResponse.getStatusLine().getStatusCode(); if (acceptStatCode.contains(statusCode)) { ImagePage imagePage = new ImagePage(ImageIO.read(httpResponse.getEntity().getContent())); imagePage.setRawText(""); imagePage.setUrl(new PlainText(request.getUrl())); imagePage.setRequest(request); imagePage.setStatusCode(httpResponse.getStatusLine().getStatusCode()); return imagePage; } else { logger.warn("code error " + statusCode + "\t" + request.getUrl()); return null; } } catch (IOException e) { logger.warn("download image " + request.getUrl() + " error", e); if (site.getCycleRetryTimes() > 0) { return addToCycleRetry(request, site); } return null; } finally { try { if (httpResponse != null) { //ensure the connection is released back to pool EntityUtils.consume(httpResponse.getEntity()); } } catch (IOException e) { logger.warn("close response fail", e); } } }
From source file:com.aliyun.api.gateway.demo.Client.java
/** * ?Header/*ww w .j a va2s .c om*/ * * @param requestBuilder * * @param headers * Http * @param url * http://host+path+query * @param formParam * ?? * @param signHeaderPrefixes * ???Header? * @return Header * @throws MalformedURLException */ private void initialBasicHeader(RequestBuilder requestBuilder, Map<String, String> headers, URL url, Map<String, String> formParam, String[] signHeaderPrefixes) throws MalformedURLException { if (headers != null) { for (Map.Entry<String, String> e : headers.entrySet()) { requestBuilder.removeHeaders(e.getKey()).addHeader(e.getKey(), e.getValue()); } } StringBuilder stringBuilder = new StringBuilder(); if (StringUtils.isNotBlank(url.getPath())) { stringBuilder.append(url.getPath()); } if (StringUtils.isNotBlank(url.getQuery())) { stringBuilder.append("?"); stringBuilder.append(url.getQuery()); } requestBuilder.addHeader(SystemHeader.X_CA_SIGNATURE, SignUtil.sign(requestBuilder, stringBuilder.toString(), formParam, appSecret, signHeaderPrefixes)); }
From source file:com.yahoo.validatar.execution.rest.JSON.java
/** * Creates a HttpUriRequest based on the metadata configuration. * @param metadata The metadata configuration. * @return A configured request object.//from w ww. ja va 2s.co m */ private HttpUriRequest createRequest(Map<String, String> metadata) { String verb = metadata.getOrDefault(VERB_KEY, DEFAULT_VERB); String url = metadata.get(URL_KEY); if (url == null || url.isEmpty()) { throw new IllegalArgumentException("The " + URL_KEY + " must be provided and contain a valid url."); } RequestBuilder builder; if (GET.equals(verb)) { builder = RequestBuilder.get(url); } else if (POST.equals(verb)) { builder = RequestBuilder.post(url); String body = metadata.getOrDefault(BODY_KEY, EMPTY_BODY); builder.setEntity(new StringEntity(body, Charset.defaultCharset())); } else { throw new UnsupportedOperationException("This HTTP method is not currently supported: " + verb); } // Everything else is assumed to be a header metadata.entrySet().stream().filter(entry -> !KNOWN_KEYS.contains(entry.getKey())) .forEach(entry -> builder.addHeader(entry.getKey(), entry.getValue())); return builder.build(); }
From source file:org.eclipse.rdf4j.http.client.RDF4JProtocolSession.java
@Override protected HttpUriRequest getUpdateMethod(QueryLanguage ql, String update, String baseURI, Dataset dataset, boolean includeInferred, int maxExecutionTime, Binding... bindings) { RequestBuilder builder = null; if (transactionURL != null) { builder = RequestBuilder.put(transactionURL); builder.addHeader("Content-Type", Protocol.SPARQL_UPDATE_MIME_TYPE + "; charset=utf-8"); builder.addParameter(Protocol.ACTION_PARAM_NAME, Action.UPDATE.toString()); for (NameValuePair nvp : getUpdateMethodParameters(ql, null, baseURI, dataset, includeInferred, maxExecutionTime, bindings)) { builder.addParameter(nvp);/*from w w w . j ava 2s . c om*/ } // in a PUT request, we carry the only actual update string as the // request body - the rest is sent as request parameters builder.setEntity(new StringEntity(update, UTF8)); } else { builder = RequestBuilder.post(getUpdateURL()); builder.addHeader("Content-Type", Protocol.FORM_MIME_TYPE + "; charset=utf-8"); builder.setEntity(new UrlEncodedFormEntity(getUpdateMethodParameters(ql, update, baseURI, dataset, includeInferred, maxExecutionTime, bindings), UTF8)); } // functionality to provide custom http headers as required by the // applications for (Map.Entry<String, String> additionalHeader : getAdditionalHttpHeaders().entrySet()) { builder.addHeader(additionalHeader.getKey(), additionalHeader.getValue()); } return builder.build(); }
From source file:org.keycloak.adapters.authorization.cip.HttpClaimInformationPointProvider.java
private void setHeaders(RequestBuilder builder, HttpFacade httpFacade) { Object headersDef = config.get("headers"); if (headersDef != null) { Map<String, Object> headers = Map.class.cast(headersDef); for (Entry<String, Object> header : headers.entrySet()) { Object value = header.getValue(); List<String> headerValues = new ArrayList<>(); if (value instanceof Collection) { Collection values = Collection.class.cast(value); Iterator iterator = values.iterator(); while (iterator.hasNext()) { headerValues.addAll(PlaceHolders.resolve(iterator.next().toString(), httpFacade)); }/*from w w w . jav a 2 s . c om*/ } else { headerValues.addAll(PlaceHolders.resolve(value.toString(), httpFacade)); } for (String headerValue : headerValues) { builder.addHeader(header.getKey(), headerValue); } } } }