ClientRequest newRequest = ClientRequest.from(request) .attribute(ATTRIBUTE_ENDPOINT, endpoint.get().getId()) .url(newUrl) .build(); return next.exchange(newRequest);
@Test public void url() throws URISyntaxException { URI url1 = new URI("http://example.com/foo"); URI url2 = new URI("http://example.com/bar"); ClientRequest.Builder builder = ClientRequest.create(DELETE, url1); assertEquals(url1, builder.build().url()); builder.url(url2); assertEquals(url2, builder.build().url()); }
private ClientRequest applyUriDefaults(ClientRequest request) { URI requestUri = request.url(); if (!StringUtils.isEmpty(requestUri.getHost())) { return request; } try { requestUri = new URI("http", requestUri.getUserInfo(), "localhost", 8080, requestUri.getPath(), requestUri.getQuery(), requestUri.getFragment()); return ClientRequest.from(request).url(requestUri).build(); } catch (URISyntaxException ex) { throw new IllegalStateException(ex); } }