From a64551296a044e1cd2e50606faa680050356e2ca Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Thu, 18 Feb 2016 18:15:22 -0800 Subject: [PATCH] new boolean forceFetch setting; REQUEST_HEADER_BLACKLIST to exclude certain http headers, since with https://github.com/internetarchive/umbra/pull/55 umbra sends over more stuff --- .../crawler/frontier/AMQPUrlReceiver.java | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/contrib/src/main/java/org/archive/crawler/frontier/AMQPUrlReceiver.java b/contrib/src/main/java/org/archive/crawler/frontier/AMQPUrlReceiver.java index 880d770f..816e2053 100644 --- a/contrib/src/main/java/org/archive/crawler/frontier/AMQPUrlReceiver.java +++ b/contrib/src/main/java/org/archive/crawler/frontier/AMQPUrlReceiver.java @@ -21,6 +21,7 @@ package org.archive.crawler.frontier; import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.Map; @@ -131,6 +132,14 @@ public class AMQPUrlReceiver implements Lifecycle, ApplicationListener REQUEST_HEADER_BLACKLIST = new HashSet(Arrays.asList( + "accept-encoding", "upgrade-insecure-requests", "host", "connection")); // XXX should we be using QueueingConsumer because of possible blocking in // frontier.schedule()? @@ -318,6 +330,7 @@ public class AMQPUrlReceiver implements Lifecycle, ApplicationListener customHttpRequestHeaders = new HashMap(); - for (Object key : joHeaders.keySet()) { - customHttpRequestHeaders.put(key.toString(), - joHeaders.getString(key.toString())); + for (Object key: joHeaders.keySet()) { + String k = key.toString(); + if (!k.startsWith(":") && !REQUEST_HEADER_BLACKLIST.contains(k)) { + customHttpRequestHeaders.put(k, joHeaders.getString(key.toString())); + } } curi.getData().put("customHttpRequestHeaders", customHttpRequestHeaders); @@ -392,7 +407,7 @@ public class AMQPUrlReceiver implements Lifecycle, ApplicationListener