List of usage examples for org.apache.http.client.methods HttpRequestBase addHeader
public void addHeader(Header header)
From source file:com.tremolosecurity.proxy.filter.PostProcess.java
protected void setHeadersCookies(HttpFilterRequest req, UrlHolder holder, HttpRequestBase method, String finalURL) throws Exception { Iterator<String> names; names = req.getHeaderNames();/*from w w w.j ava 2s. co m*/ String cookieName = null; URL url = new URL(finalURL); while (names.hasNext()) { String name = names.next(); if (name.equalsIgnoreCase("Cookie")) { cookieName = name; continue; } if (logger.isDebugEnabled()) { logger.debug("Header : " + name); } Attribute attrib = req.getHeader(name); Iterator<String> attrVals = attrib.getValues().iterator(); while (attrVals.hasNext()) { String val = attrVals.next(); if (name.equalsIgnoreCase("Content-Type")) { continue; } else if (name.equalsIgnoreCase("If-Range")) { continue; } else if (name.equalsIgnoreCase("Range")) { continue; } else if (name.equalsIgnoreCase("If-None-Match")) { continue; } if (name.equalsIgnoreCase("HOST")) { if (holder.isOverrideHost()) { if (logger.isDebugEnabled()) { logger.debug("Final URL : '" + finalURL + "'"); } val = url.getHost(); if (url.getPort() != -1) { StringBuffer b = new StringBuffer(); b.append(val).append(":").append(url.getPort()); val = b.toString(); } } } else if (name.equalsIgnoreCase("Referer")) { if (holder.isOverrideReferer()) { URL origRef = new URL(val); StringBuffer newRef = new StringBuffer(); newRef.append(url.getProtocol()).append("://").append(url.getHost()); if (url.getPort() != -1) { newRef.append(':').append(url.getPort()); } newRef.append(origRef.getPath()); if (origRef.getQuery() != null) { newRef.append('?').append(origRef.getQuery()); } if (logger.isDebugEnabled()) { logger.debug("Final Ref : '" + newRef.toString() + "'"); } val = newRef.toString(); } } if (this.addHeader(name)) { if (logger.isDebugEnabled()) { logger.debug("Header Added - '" + name + "'='" + val + "'"); } method.addHeader(new BasicHeader(attrib.getName(), val)); } } } HashMap<String, Attribute> fromResults = (HashMap<String, Attribute>) req .getAttribute(AzSys.AUTO_IDM_HTTP_HEADERS); if (fromResults != null) { names = fromResults.keySet().iterator(); while (names.hasNext()) { String name = names.next(); method.removeHeaders(name); Attribute attrib = fromResults.get(name); Iterator<String> attrVals = attrib.getValues().iterator(); while (attrVals.hasNext()) { String val = attrVals.next(); if (logger.isDebugEnabled()) { logger.debug("Header Added - '" + name + "'='" + val + "'"); } method.addHeader(new BasicHeader(name, val)); } } } String sessionCookieName = ""; if (holder.getApp().getCookieConfig() != null) { sessionCookieName = holder.getApp().getCookieConfig().getSessionCookieName(); } HashSet<String> toRemove = new HashSet<String>(); toRemove.add(sessionCookieName); toRemove.add("autoIdmSessionCookieName"); toRemove.add("autoIdmAppName"); toRemove.add("JSESSIONID"); names = req.getCookieNames().iterator(); StringBuffer cookieHeader = new StringBuffer(); boolean isFirst = true; while (names.hasNext()) { String name = names.next(); if (toRemove.contains(name)) { continue; } ArrayList<Cookie> cookies = req.getCookies(name); Iterator<Cookie> itc = cookies.iterator(); while (itc.hasNext()) { Cookie cookie = itc.next(); String cookieFinalName; if (cookie.getName().startsWith("JSESSIONID")) { String host = cookie.getName().substring(cookie.getName().indexOf('-') + 1); host = host.replaceAll("[|]", " "); if (!holder.getApp().getName().equalsIgnoreCase(host)) { continue; } cookieFinalName = "JSESSIONID"; } else { cookieFinalName = cookie.getName(); } String val = cookie.getValue(); if (logger.isDebugEnabled()) { logger.debug("Cookie Added - '" + name + "'='" + val + "'"); } cookieHeader.append(cookieFinalName).append('=').append(val).append("; "); } } if (cookieHeader.length() > 0) { if (cookieName == null) { cookieName = "Cookie"; } method.addHeader(new BasicHeader(cookieName, cookieHeader.toString())); } }
From source file:org.bigmouth.nvwa.network.http.HttpClientHelper.java
private static void setRequestHeader(HttpRequestBase httpRequest, Header[] headers) { List<Header> cookies = Lists.newArrayList(); if (ArrayUtils.isNotEmpty(headers)) { for (Header header : headers) { if (header.getName().equals("Set-Cookie")) { cookies.add(header);//from w w w . j a va 2 s. c om } else { httpRequest.addHeader(header); } } } setRequestCookie(httpRequest, cookies.toArray(new Header[0])); }