public Header[] getHeaders( String arg0 ) { return responseBase.getHeaders( arg0 ); }
private static boolean isTemporaryRedirect(org.apache.http.HttpResponse response) { int status = response.getStatusLine().getStatusCode(); return status == HttpStatus.SC_TEMPORARY_REDIRECT && response.getHeaders("Location") != null && response.getHeaders("Location").length > 0; }
public Map<String, Header> getChallenges( final HttpResponse response, final HttpContext context) throws MalformedChallengeException { if (response == null) { throw new IllegalArgumentException("HTTP response may not be null"); } Header[] headers = response.getHeaders(AUTH.WWW_AUTH); return parseChallenges(headers); }
public Map<String, Header> getChallenges( final HttpResponse response, final HttpContext context) throws MalformedChallengeException { if (response == null) { throw new IllegalArgumentException("HTTP response may not be null"); } Header[] headers = response.getHeaders(AUTH.PROXY_AUTH); return parseChallenges(headers); }
private <T extends JestResult> T deserializeResponse(HttpResponse response, final HttpRequest httpRequest, Action<T> clientRequest) throws IOException { StatusLine statusLine = response.getStatusLine(); try { return clientRequest.createNewElasticSearchResult( response.getEntity() == null ? null : EntityUtils.toString(response.getEntity()), statusLine.getStatusCode(), statusLine.getReasonPhrase(), gson ); } catch (com.google.gson.JsonSyntaxException e) { for (Header header : response.getHeaders("Content-Type")) { final String mimeType = header.getValue(); if (!mimeType.startsWith("application/json")) { // probably a proxy that responded in text/html final String message = "Request " + httpRequest.toString() + " yielded " + mimeType + ", should be json: " + statusLine.toString(); throw new IOException(message, e); } } throw e; } }
public Response headers(final String headerName, final ArrayCallback callback) throws Exception { Header[] headers = rsp.getHeaders(headerName); String[] values = new String[headers.length]; for (int i = 0; i < values.length; i++) { values[i] = headers[i].getValue(); } callback.execute(values); return this; }
@Test public void shouldSupportGetHeadersWithArg() throws Exception { HttpResponse resp = new TestHttpResponse(304, "REDIRECTED", new BasicHeader("Location", "http://bar.com"), new BasicHeader("X-Zombo-Com", "http://zombo.com"), new BasicHeader("Location", "http://foo.com")); Header[] headers = resp.getHeaders("Location"); assertThat(headers.length).isEqualTo(2); assertThat(headers[0].getValue()).isEqualTo("http://bar.com"); assertThat(headers[1].getValue()).isEqualTo("http://foo.com"); }
@Test public void shouldForwardHttpsAndHost() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); httpget.setHeader( "X-Forwarded-Host", "foobar.com" ); httpget.setHeader( "X-Forwarded-Proto", "https" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertTrue( responseEntityBody.contains( "https://foobar.com" ) ); assertFalse( responseEntityBody.contains( "https://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } }
@Test public void shouldForwardHttpAndHost() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); httpget.setHeader( "X-Forwarded-Host", "foobar.com" ); httpget.setHeader( "X-Forwarded-Proto", "http" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertTrue( responseEntityBody.contains( "http://foobar.com" ) ); assertFalse( responseEntityBody.contains( "http://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } }
@Test public void shouldForwardHttpAndHostOnDifferentPort() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); httpget.setHeader( "X-Forwarded-Host", "foobar.com:9999" ); httpget.setHeader( "X-Forwarded-Proto", "http" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertTrue( responseEntityBody.contains( "http://foobar.com:9999" ) ); assertFalse( responseEntityBody.contains( "http://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } }
@Test public void shouldForwardHttpAndFirstHost() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); httpget.setHeader( "X-Forwarded-Host", "foobar.com, bazbar.com" ); httpget.setHeader( "X-Forwarded-Proto", "http" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertTrue( responseEntityBody.contains( "http://foobar.com" ) ); assertFalse( responseEntityBody.contains( "http://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } }
@Test public void shouldForwardHttpsAndHostOnDifferentPort() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); httpget.setHeader( "X-Forwarded-Host", "foobar.com:9999" ); httpget.setHeader( "X-Forwarded-Proto", "https" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertTrue( responseEntityBody.contains( "https://foobar.com:9999" ) ); assertFalse( responseEntityBody.contains( "https://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } }
@Override public void run() throws Exception { HttpResponse httpResponse = helper.headForResponse(remoteUrl("/targets")); assertThat(httpResponse.getStatusLine().getStatusCode(), is(200)); assertThat(httpResponse.getHeaders("ETag")[0].getValue(), is("Moco")); } });
@Test public void shouldUseRequestUriWhenNoXForwardHeadersPresent() throws Exception { URI rootUri = functionalTestHelper.baseUri(); HttpClient httpclient = new DefaultHttpClient(); try { HttpGet httpget = new HttpGet( rootUri ); httpget.setHeader( "Accept", "application/json" ); HttpResponse response = httpclient.execute( httpget ); String length = response.getHeaders( "CONTENT-LENGTH" )[0].getValue(); byte[] data = new byte[Integer.valueOf( length )]; response.getEntity().getContent().read( data ); String responseEntityBody = new String( data ); assertFalse( responseEntityBody.contains( "https://foobar.com" ) ); assertFalse( responseEntityBody.contains( ":0" ) ); assertTrue( responseEntityBody.contains( "http://localhost" ) ); } finally { httpclient.getConnectionManager().shutdown(); } } }
@Override public void run() throws IOException { HttpResponse response = helper.getResponse(root()); Header[] headers = response.getHeaders("foo"); assertThat(headers.length, is(2)); assertThat(headers[0].getValue(), is("bar")); assertThat(headers[1].getValue(), is("another")); } });
@Override public void run() throws IOException { Header[] headers = helper.getResponse(root()).getHeaders("foo"); assertThat(headers.length, is(2)); assertThat(headers[0].getValue(), is("bar")); assertThat(headers[1].getValue(), is("moco")); } });
@Override public void run() throws Exception { Header[] headers = helper.getResponse(root()).getHeaders(HttpHeaders.CONTENT_TYPE); assertThat(headers.length, is(1)); } });
@Test public void should_head_all_resource() throws IOException { runWithConfiguration("rest/rest.json"); org.apache.http.HttpResponse httpResponse = helper.headForResponse(remoteUrl("/all-resources")); assertThat(httpResponse.getStatusLine().getStatusCode(), is(200)); assertThat(httpResponse.getHeaders("ETag")[0].getValue(), is("Moco")); }
@Override public void run() throws Exception { Plain response1 = getResource("/rest/targets/1"); assertThat(response1.code, is(1)); assertThat(response1.message, is("hello")); Plain response2 = getResource("/rest/targets/2"); assertThat(response2.code, is(2)); assertThat(response2.message, is("world")); org.apache.http.HttpResponse response = helper.getResponse(remoteUrl("/rest/targets/1")); assertThat(response.getHeaders("foo")[0].getValue(), is("bar")); } });
@Test public void should_head() throws IOException { runWithConfiguration("rest/rest.json"); final Plain resource1 = new Plain(); resource1.code = 1; resource1.message = "hello"; org.apache.http.HttpResponse httpResponse = helper.headForResponse(remoteUrl("/targets/1")); assertThat(httpResponse.getStatusLine().getStatusCode(), is(200)); assertThat(httpResponse.getHeaders("ETag")[0].getValue(), is("Moco")); }