Commit 46297dea authored by yihua.huang's avatar yihua.huang

HttpUriRequestConverter

parent 1d86f7c0
...@@ -86,7 +86,7 @@ public class HttpClientDownloader extends AbstractDownloader { ...@@ -86,7 +86,7 @@ public class HttpClientDownloader extends AbstractDownloader {
authState.update(new BasicScheme(), new UsernamePasswordCredentials(proxy.getUsername(), proxy.getPassword())); authState.update(new BasicScheme(), new UsernamePasswordCredentials(proxy.getUsername(), proxy.getPassword()));
httpContext.setAttribute(HttpClientContext.PROXY_AUTH_STATE, authState); httpContext.setAttribute(HttpClientContext.PROXY_AUTH_STATE, authState);
} }
HttpUriRequest httpUriRequest = httpUriRequestConverter.convert(request, site); HttpUriRequest httpUriRequest = httpUriRequestConverter.convert(request, site, proxy);
CloseableHttpClient httpClient = getHttpClient(site); CloseableHttpClient httpClient = getHttpClient(site);
try { try {
httpResponse = httpClient.execute(httpUriRequest, httpContext); httpResponse = httpClient.execute(httpUriRequest, httpContext);
......
...@@ -10,6 +10,7 @@ import org.apache.http.client.methods.RequestBuilder; ...@@ -10,6 +10,7 @@ import org.apache.http.client.methods.RequestBuilder;
import org.apache.http.message.BasicNameValuePair; import org.apache.http.message.BasicNameValuePair;
import us.codecraft.webmagic.Request; import us.codecraft.webmagic.Request;
import us.codecraft.webmagic.Site; import us.codecraft.webmagic.Site;
import us.codecraft.webmagic.proxy.Proxy;
import us.codecraft.webmagic.utils.HttpConstant; import us.codecraft.webmagic.utils.HttpConstant;
import java.nio.charset.Charset; import java.nio.charset.Charset;
...@@ -25,14 +26,10 @@ import java.util.Map; ...@@ -25,14 +26,10 @@ import java.util.Map;
*/ */
public class HttpUriRequestConverter { public class HttpUriRequestConverter {
public HttpUriRequest convert(Request request, Site site) { public HttpUriRequest convert(Request request, Site site, Proxy proxy) {
return null;
}
private HttpUriRequest getHttpUriRequest(Request request, Site site, Map<String, String> headers, HttpHost proxy) {
RequestBuilder requestBuilder = selectRequestMethod(request).setUri(request.getUrl()); RequestBuilder requestBuilder = selectRequestMethod(request).setUri(request.getUrl());
if (headers != null) { if (site.getHeaders() != null) {
for (Map.Entry<String, String> headerEntry : headers.entrySet()) { for (Map.Entry<String, String> headerEntry : site.getHeaders().entrySet()) {
requestBuilder.addHeader(headerEntry.getKey(), headerEntry.getValue()); requestBuilder.addHeader(headerEntry.getKey(), headerEntry.getValue());
} }
} }
...@@ -46,7 +43,7 @@ public class HttpUriRequestConverter { ...@@ -46,7 +43,7 @@ public class HttpUriRequestConverter {
} }
if (proxy != null) { if (proxy != null) {
requestConfigBuilder.setProxy(proxy); requestConfigBuilder.setProxy(new HttpHost(proxy.getProxyHost().getHost(), proxy.getProxyHost().getPort()));
} }
requestBuilder.setConfig(requestConfigBuilder.build()); requestBuilder.setConfig(requestConfigBuilder.build());
return requestBuilder.build(); return requestBuilder.build();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment