Merge pull request #1247 from Coramo/master
fix 'RibbonRequest' cannot to encode issues
This commit is contained in:
@@ -123,9 +123,7 @@ public class FeignLoadBalancer extends
|
||||
request.headers());
|
||||
// Apache client barfs if you set the content length
|
||||
headers.remove(Util.CONTENT_LENGTH);
|
||||
return new RequestTemplate().method(request.method())
|
||||
.append(getUri().toASCIIString())
|
||||
.body(request.body(), request.charset()).headers(headers).request();
|
||||
return Request.create(request.method(),getUri().toASCIIString(),headers,request.body(),request.charset());
|
||||
}
|
||||
|
||||
Request toRequest() {
|
||||
|
||||
@@ -18,6 +18,7 @@ import static org.mockito.Mockito.when;
|
||||
import java.net.URI;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
@@ -113,4 +114,21 @@ public class FeignLoadBalancerTests {
|
||||
new URI("http://bar/"));
|
||||
assertThat(uri, is(new URI("https://foo:443/")));
|
||||
}
|
||||
|
||||
@Test
|
||||
@SneakyThrows
|
||||
public void testRibbonRequestURLEncode() {
|
||||
String url = "http://foo/?name=%7bcookie";//name={cookie
|
||||
Request request = Request.create("GET",url,new HashMap(),null,null);
|
||||
|
||||
assertThat(request.url(),is(url));
|
||||
|
||||
RibbonRequest ribbonRequest = new RibbonRequest(this.delegate,request,new URI(request.url()));
|
||||
|
||||
Request cloneRequest = ribbonRequest.toRequest();
|
||||
|
||||
assertThat(cloneRequest.url(),is(url));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user