Java 类org.apache.http.client.fluent.Response 实例源码
项目:CarmenRest-VertX
文件:RestResponseTests.java
@Test
public void testCustomStatus()
{
Choir testChoir = new Choir();
Response result = TestUtility.postGetResponse(choirBase + "nameOfChoirBlocking", testChoir.toJson(false));
HttpResponse response = null;
try {
response = result.returnResponse();
} catch (IOException e1) {
e1.printStackTrace();
}
assertTrue(response.getStatusLine().getStatusCode() == 400);
assertTrue(response.getStatusLine().getReasonPhrase().equals("Choir Name is required!"));
}
项目:CarmenRest-VertX
文件:RestResponseTests.java
@Test
public void testCustomHeaders()
{
Choir testChoir = new Choir();
Response result = TestUtility.postGetResponse(choirBase + "nameOfChoirHeaders", testChoir.toJson(false));
HttpResponse response = null;
try {
response = result.returnResponse();
} catch (IOException e1) {
e1.printStackTrace();
}
// Normally would return plain text because the ResultType annotation is missing on the handling method
assertTrue(response.getHeaders("content-type")[0].getValue().equals("application/json; charset=utf-8"));
}
项目:kurento-testing
文件:OrionConnector.java
/**
* Sends a request to Orion
*
* @param ctxElement
* The context element
* @param path
* the path from the context broker that determines which "operation"will be executed
* @param responseClazz
* The class expected for the response
* @return The object representing the JSON answer from Orion
* @throws OrionConnectorException
* if a communication exception happens, either when contacting the context broker at
* the given address, or obtaining the answer from it.
*/
private <E, T> T sendRequestToOrion(E ctxElement, String path, Class<T> responseClazz) {
String jsonEntity = gson.toJson(ctxElement);
log.debug("Send request to Orion: {}", jsonEntity);
Request req = Request.Post(this.orionAddr.toString() + path)
.addHeader("Accept", APPLICATION_JSON.getMimeType())
.bodyString(jsonEntity, APPLICATION_JSON).connectTimeout(5000).socketTimeout(5000);
Response response;
try {
response = req.execute();
} catch (IOException e) {
throw new OrionConnectorException("Could not execute HTTP request", e);
}
HttpResponse httpResponse = checkResponse(response);
T ctxResp = getOrionObjFromResponse(httpResponse, responseClazz);
log.debug("Sent to Orion. Obtained response: {}", httpResponse);
return ctxResp;
}
项目:XPages-Fusion-Application
文件:ImageRecognition.java
public ArrayList<String[]> getVisualRecog(String imageUrl) throws JsonException, URISyntaxException, IOException {
String apiKey = bluemixUtil.getApiKey();
String getUrl = bluemixUtil.getBaseUrl().replace("https:", "http:") + CLASSIFY_API + "?url=" + imageUrl + "&api_key=" + apiKey + "&version=" + VERSION;
Response response = rest.get(getUrl);
//Convert the response into JSON data
String content = EntityUtils.toString(response.returnResponse().getEntity());
JsonJavaObject jsonData = rest.parse(content);
//Retrieve the list of highest matching classifiers and associated confidences
ArrayList<String[]> tags = getSuggestedTags(jsonData);
if(tags != null && tags.size() > 0) {
return tags;
}
return null;
}
项目:XPages-Fusion-Application
文件:RestUtil.java
/**
* Send POST request with authorization header and additional headers
* @param url - The url of the POST request
* @param auth - String for authorization header
* @param headers - Hashmap of headers to add to the request
* @param postData - The body of the POST
* @return the Response to the POST request
*/
public Response post(String url, String auth, HashMap<String, String> headers, JsonJavaObject postData) throws JsonException, IOException, URISyntaxException {
URI normUri = new URI(url).normalize();
Request postRequest = Request.Post(normUri);
//Add all headers
if(StringUtil.isNotEmpty(auth)) {
postRequest.addHeader("Authorization", auth);
}
if(headers != null && headers.size() > 0){
for (Map.Entry<String, String> entry : headers.entrySet()) {
postRequest.addHeader(entry.getKey(), entry.getValue());
}
}
String postDataString = JsonGenerator.toJson(JsonJavaFactory.instanceEx, postData);
Response response = executor.execute(postRequest.bodyString(postDataString, ContentType.APPLICATION_JSON));
return response;
}
项目:XPages-Fusion-Application
文件:RestUtil.java
public Response post(String url, String auth, JsonJavaObject postData, File fileUpload) throws JsonException, IOException, URISyntaxException {
URI normUri = new URI(url).normalize();
Request postRequest = Request.Post(normUri);
//Add all headers
if(StringUtil.isNotEmpty(auth)) {
postRequest.addHeader("Authorization", auth);
}
MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.addBinaryBody("images_file", fileUpload, ContentType.APPLICATION_OCTET_STREAM, fileUpload.getName());
if(postData != null) {
String postDataString = JsonGenerator.toJson(JsonJavaFactory.instanceEx, postData);
builder.addTextBody("classifier_ids", postDataString, ContentType.MULTIPART_FORM_DATA);
}
HttpEntity multipart = builder.build();
postRequest.body(multipart);
Response response = executor.execute(postRequest);
return response;
}
项目:XPages-Fusion-Application
文件:RestUtil.java
/**
* Send PUT request with authorization header
* @param url - The url of the POST request
* @param auth - String for authorization header
* @param putData - The body of the PUT
*/
public Response put(String url, String auth, JsonJavaObject putData) throws URISyntaxException, IOException, JsonException {
URI normUri = new URI(url).normalize();
Request putRequest = Request.Put(normUri);
//Add auth header
if(StringUtil.isNotEmpty(auth)) {
putRequest.addHeader("Authorization", auth);
}
//Add put data
String putDataString = JsonGenerator.toJson(JsonJavaFactory.instanceEx, putData);
if(putData != null) {
putRequest = putRequest.bodyString(putDataString, ContentType.APPLICATION_JSON);
}
Response response = executor.execute(putRequest);
return response;
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public PaymentResult refundPayment(AuthHeader authHeader, Long id, Long amount) {
Response response = null;
try {
response = Request.
Post(apiUrl + "/payments/payment/" + id + "/refund")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString("amount=" + amount, ContentType.APPLICATION_JSON)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, PaymentResult.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public Payment createRecurrentPayment(AuthHeader authHeader, Long id, NextPayment createPayment) {
Response response = null;
try {
response = Request.
Post(apiUrl + "/payments/payment/" + id + "/create-recurrence")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString(marshall(createPayment), ContentType.TEXT_XML)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, Payment.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public PaymentResult voidRecurrence(AuthHeader authHeader, Long id) {
Response response = null;
try {
response = Request.
Post(apiUrl + "/payments/payment/" + id + "/void-recurrence")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new RuntimeException(ex);
}
return unMarshall(response, PaymentResult.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public PaymentResult capturePayment(AuthHeader authHeader, Long id) {
Response response = null;
try {
response = Request.
Post(apiUrl + "/payments/payment/" + id + "/capture")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, PaymentResult.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public PaymentResult voidAuthorization(AuthHeader authHeader, Long id) {
Response response = null;
try {
response = Request.
Post(apiUrl + "/payments/payment/" + id + "/void-authorization")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, PaymentResult.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public Payment getPayment(AuthHeader authHeader, Long id) {
Response response = null;
try {
response = Request.Get(apiUrl + "/payments/payment/" + id)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, Payment.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public PaymentInstrumentRoot getPaymentInstruments(AuthHeader authHeader, Long goId, Currency currency) {
Response response = null;
try {
response = Request.Get(apiUrl + "/eshops/eshop/" + goId + "/payment-instruments/" + currency)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, PaymentInstrumentRoot.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public List<EETReceipt> findEETReceiptsByFilter(@BeanParam AuthHeader authHeader, EETReceiptFilter filter) {
Response response = null;
try {
response = Request.Post(apiUrl + "/eet-receipts")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString(marshall(filter), ContentType.APPLICATION_JSON)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshallComplexResponse(response, new TypeReference<List<EETReceipt>>() {});
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public List<EETReceipt> getEETReceiptByPaymentId(@BeanParam AuthHeader authHeader, Long id) {
Response response = null;
try {
response = Request.Get(apiUrl + "/payments/payment/" + id + "/eet-receipts")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshallComplexResponse(response, new TypeReference<List<EETReceipt>>() {});
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public byte[] getStatement(AuthHeader authHeader, AccountStatement accountStatement) {
Response response = null;
try {
response = Request.Post(apiUrl + "/accounts/account-statement")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString(marshall(accountStatement), ContentType.APPLICATION_JSON)
.execute();
HttpResponse httpresponse = response.returnResponse();
return EntityUtils.toByteArray(httpresponse.getEntity());
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashCoupon createSupercashCoupon(AuthHeader authHeader, SupercashCouponRequest couponRequest) {
Response response = null;
try {
response = Request.Post(apiUrl + "/supercash/coupon")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.
getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString(marshall(couponRequest), ContentType.APPLICATION_JSON)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashCoupon.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashBatchResult createSupercashCouponBatch(AuthHeader authHeader, SupercashBatchRequest batchRequest) {
Response response = null;
try {
response = Request.Post(apiUrl + "/supercash/coupon/batch")
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_JSON)
.addHeader(AUTHORIZATION, authHeader.
getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.bodyString(marshall(batchRequest), ContentType.APPLICATION_JSON)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashBatchResult.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashBatchState getSupercashCouponBatchStatus(AuthHeader authHeader, Long batchId) {
Response response = null;
try {
response = Request.Get(apiUrl + "/batch/" + batchId)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashBatchState.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashBatch getSupercashCouponBatch(AuthHeader authHeader, Long goId, Long batchId) {
Response response = null;
try {
response = Request.Get(apiUrl + "/supercash/coupon/find?batch_request_id=" + batchId + "&go_id=" + goId)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashBatch.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashBatch findSupercashCoupons(AuthHeader authHeader, Long goId, String paymentSessionIds) {
Response response = null;
try {
response = Request.Get(apiUrl + "/supercash/coupon/find?payment_session_id_list=" + paymentSessionIds + "&go_id=" + goId)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashBatch.class);
}
项目:gopay-java-api
文件:HttpClientPaymentClientImpl.java
@Override
public SupercashPayment getSupercashCoupon(AuthHeader authHeader, Long couponId) {
Response response = null;
try {
response = Request.Get(apiUrl + "/supercash/coupon/" + couponId)
.addHeader(ACCEPT, MediaType.APPLICATION_JSON)
.addHeader(CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED)
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(USER_AGENT, IMPLEMENTATION_NAME + "=" + VERSION)
.execute();
} catch (IOException ex) {
throw new WebApplicationException(ex);
}
return unMarshall(response, SupercashPayment.class);
}
项目:gopay-java-api
文件:HttpClientAuthClientImpl.java
@Override
public AccessToken loginApplication(AuthHeader authHeader, String grantType, String scope) {
Form form = Form.form();
form.add(SCOPE, scope);
form.add(GRANT_TYPE, grantType);
Response respose = null;
try {
respose = Request.Post(apiUrl + "/oauth2/token")
.addHeader(AUTHORIZATION, authHeader.getAuhorization())
.addHeader(CONTENT_TYPE, "application/x-www-form-urlencoded")
.bodyForm(form.build())
.bodyString("grant_type=client_credentials&scope=" + scope, ContentType.APPLICATION_JSON)
.execute();
} catch (IOException ex) {
throw new WebApplicationException();
}
return unMarshall(respose, AccessToken.class);
}
项目:tutorial-soap-spring-boot-cxf
文件:SoapRawClient.java
public SoapRawClientResponse callSoapService(InputStream xmlFile) throws InternalBusinessException {
SoapRawClientResponse rawSoapResponse = new SoapRawClientResponse();
LOGGER.debug("Calling SoapService with POST on Apache HTTP-Client and configured URL: {}", soapServiceUrl);
try {
Response httpResponseContainer = Request
.Post(soapServiceUrl)
.bodyStream(xmlFile, contentTypeTextXmlUtf8())
.addHeader("SOAPAction", "\"" + soapAction + "\"")
.execute();
HttpResponse httpResponse = httpResponseContainer.returnResponse();
rawSoapResponse.setHttpStatusCode(httpResponse.getStatusLine().getStatusCode());
rawSoapResponse.setHttpResponseBody(XmlUtils.parseFileStream2Document(httpResponse.getEntity().getContent()));
} catch (Exception exception) {
throw new InternalBusinessException("Some Error accured while trying to Call SoapService for test: " + exception.getMessage());
}
return rawSoapResponse;
}
项目:camel-consul-leader
文件:ConsulFacadeBean.java
public void destroySession(final Optional<String> sessionKey, final String serviceName) {
sessionKey.ifPresent(_sessionKey -> {
logger.info("Releasing Consul session");
final String uri = leaderKey(consulUrl, serviceName, "release", _sessionKey);
logger.debug("PUT {}", uri);
try {
final Response response = executor.execute(Request
.Put(uri));
final Optional<Boolean> result = Optional.ofNullable(Boolean.valueOf(response.returnContent().asString()));
logger.debug("Result: {}", result);
destroySession(consulUrl, _sessionKey);
} catch (final Exception e) {
logger.warn("Failed to release session key in Consul: {}", e);
}
});
}
项目:camel-consul-leader
文件:ConsulFacadeBeanTest.java
@Test
public void pollConsulWhenNoSession_EffectivelyEquivalentToCreateSession() throws ClientProtocolException, IOException {
final Response response = mock(Response.class);
final HttpResponse httpResponse = mock(HttpResponse.class);
when(httpResponse.getEntity()).thenReturn(new StringEntity("{\"ID\":\"SESSION\"}"));
when(httpResponse.getStatusLine()).thenReturn(new BasicStatusLine(new ProtocolVersion("http", 1, 1), 200, "yay"));
when(response.returnResponse()).thenReturn(httpResponse);
when(executor.execute(any(Request.class))).thenReturn(response);
final ConsulFacadeBean bean = new ConsulFacadeBean("URL", Optional.empty(), Optional.empty(), executor);
Optional<Boolean> result = bean.pollConsul("SERVICE");
assertNotNull(result);
assertTrue(result.isPresent());
assertFalse(result.get());
}
项目:openshift-elasticsearch-plugin
文件:HttpsProxyClientCertAuthenticatorIntegrationTest.java
@Test
public void testProxyAuthWithSSL() throws Exception {
SSLContext sslContext = new SSLContextBuilder()
.loadTrustMaterial(new File(keyStoreFile), keystorePW.toCharArray(), new TrustSelfSignedStrategy())
.build();
try (CloseableHttpClient httpclient = HttpClients.custom().setSSLContext(sslContext)
.setSSLHostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
return true;
}
}).build()) {
Executor ex = Executor.newInstance(httpclient);
Response response = ex.execute(Request.Get("https://localhost:9200/blahobar.234324234/logs/1")
.addHeader("Authorization", String.format("Bearer %s", token))
.addHeader("X-Proxy-Remote-User", proxyUser));
System.out.println(response.returnContent().asString());
} catch (Exception e) {
System.out.println(e);
fail("Test Failed");
}
}
项目:junit-docker-rule
文件:AssertHtml.java
@Override
public void execute() {
try {
Response response = retryGet(new ResponseGetter(remotePageUrl), NO_OF_RETRIES, RETRY_WAIT_TIME);
HttpResponse httpResponse = response.returnResponse();
assertEquals("http error code does not match", httpErrorCode, httpResponse.getStatusLine().getStatusCode());
if (contentFragment != null) {
HttpEntity entity = httpResponse.getEntity();
if (entity == null) {
throw new IllegalStateException("Response contains no content");
}
try (InputStream is = entity.getContent()) {
byte[] bytes = IOUtils.toByteArray(is);
String pageContent = new String(bytes, Charset.defaultCharset());
assertNotNull("page content is empty", pageContent);
log.debug("\n" + head(pageContent, NO_OF_LINES_TO_LOG));
assertTrue(String.format("page content '%s' does not contain '%s'", pageContent, contentFragment), pageContent.contains(contentFragment));
}
}
} catch (IOException e) {
throw new IllegalStateException(e);
}
}
项目:gravitee-gateway
文件:RoundRobinLoadBalancingMultipleTest.java
@Test
public void call_round_robin_lb_multiple_endpoints() throws Exception {
Request request = Request.Get("http://localhost:8082/echo/helloworld");
int calls = 20;
for(int i = 0 ; i < calls ; i++) {
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String workerHeader = returnResponse.getFirstHeader("worker").getValue();
assertEquals("worker#" + (i%2) , workerHeader);
}
}
项目:gravitee-gateway
文件:PostContentGatewayTest.java
@Test
public void call_post_content() throws Exception {
InputStream is = this.getClass().getClassLoader().getResourceAsStream("case1/request_content.json");
String content = StringUtils.copy(is);
Request request = Request.Post("http://localhost:8082/test/my_team")
.bodyString(content, ContentType.APPLICATION_JSON);
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(content, responseContent);
}
项目:gravitee-gateway
文件:PostContentGatewayTest.java
@Test
public void call_case1_raw() throws Exception {
String testCase = "case1";
InputStream is = this.getClass().getClassLoader().getResourceAsStream(testCase + "/request_content.json");
String content = StringUtils.copy(is);
Request request = Request.Post("http://localhost:8082/test/my_team?case=" + testCase)
.bodyString(content, ContentType.APPLICATION_JSON);
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(content, responseContent);
}
项目:gravitee-gateway
文件:PostContentGatewayTest.java
@Test
public void call_case1_chunked_request() throws Exception {
String testCase = "case1";
InputStream is = this.getClass().getClassLoader().getResourceAsStream(testCase + "/request_content.json");
Request request = Request.Post("http://localhost:8082/test/my_team?case=" + testCase)
.bodyStream(is, ContentType.APPLICATION_JSON);
try {
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
// Not a chunked response because body content is to small
assertEquals(null, returnResponse.getFirstHeader(HttpHeaders.TRANSFER_ENCODING));
} catch (Exception e) {
e.printStackTrace();
assertTrue(false);
}
}
项目:gravitee-gateway
文件:PostContentGatewayTest.java
@Test
public void call_case2_chunked() throws Exception {
String testCase = "case2";
InputStream is = this.getClass().getClassLoader().getResourceAsStream(testCase + "/request_content.json");
Request request = Request.Post("http://localhost:8082/test/my_team?case=" + testCase)
.bodyStream(is, ContentType.APPLICATION_JSON);
try {
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
assertEquals(HttpHeadersValues.TRANSFER_ENCODING_CHUNKED, returnResponse.getFirstHeader(HttpHeaders.TRANSFER_ENCODING).getValue());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(652051, responseContent.length());
} catch (Exception e) {
e.printStackTrace();
assertTrue(false);
}
}
项目:gravitee-gateway
文件:PostContentGatewayTest.java
@Test
public void call_case3_raw() throws Exception {
String testCase = "case3";
InputStream is = this.getClass().getClassLoader().getResourceAsStream(testCase + "/request_content.json");
Request request = Request.Post("http://localhost:8082/test/my_team?mode=chunk&case=" + testCase)
.bodyStream(is, ContentType.APPLICATION_JSON);
try {
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
// Set chunk mode in request but returns raw because of the size of the content
assertEquals(null, returnResponse.getFirstHeader(HttpHeaders.TRANSFER_ENCODING));
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(70, responseContent.length());
} catch (Exception e) {
e.printStackTrace();
assertTrue(false);
}
}
项目:gravitee-gateway
文件:CorsTest.java
@Test
public void simple_request() throws Exception {
stubFor(get(urlEqualTo("/team/my_team"))
.willReturn(aResponse()
.withStatus(HttpStatus.SC_OK)
.withBody("{\"key\": \"value\"}")));
org.apache.http.client.fluent.Request request = org.apache.http.client.fluent.Request.Get("http://localhost:8082/test/my_team");
org.apache.http.client.fluent.Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
assertEquals(CorsHandler.ALLOW_ORIGIN_PUBLIC_WILDCARD, returnResponse.getFirstHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN).getValue());
assertEquals("x-forwarded-host", returnResponse.getFirstHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS).getValue());
// Check that the stub has never been invoked by the gateway
verify(1, getRequestedFor(urlEqualTo("/team/my_team")));
}
项目:gravitee-gateway
文件:ServiceUnavailableTest.java
@Test
public void call_availableAndUnavailable_api() throws Exception {
// Set the endpoint as down
api.getProxy().getEndpoints().iterator().next().setStatus(Endpoint.Status.DOWN);
Request request = Request.Get("http://localhost:8082/test/my_team");
Response response = request.execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_SERVICE_UNAVAILABLE, returnResponse.getStatusLine().getStatusCode());
// Set the endpoint as up
api.getProxy().getEndpoints().iterator().next().setStatus(Endpoint.Status.UP);
Request request2 = Request.Get("http://localhost:8082/test/my_team");
Response response2 = request2.execute();
HttpResponse returnResponse2 = response2.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse2.getStatusLine().getStatusCode());
}
项目:gravitee-gateway
文件:QueryParametersTest.java
@Test
public void call_get_query_params_emptyvalue() throws Exception {
String query = "";
URI target = new URIBuilder("http://localhost:8082/test/my_team")
.addParameter("q", null)
.build();
Response response = Request.Get(target).execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(query, responseContent);
}
项目:gravitee-gateway
文件:QueryParametersTest.java
@Test
public void call_get_query_accent() throws Exception {
String query = "poupée";
URI target = new URIBuilder("http://localhost:8082/test/my_team")
.addParameter("q", query)
.build();
Response response = Request.Get(target).execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(query, responseContent);
}
项目:gravitee-gateway
文件:QueryParametersTest.java
@Test
public void call_get_query_with_special_separator() throws Exception {
String query = "from:2016-01-01;to:2016-01-31";
URI target = new URIBuilder("http://localhost:8082/test/my_team")
.addParameter("id", "20000047")
.addParameter("idType", "1")
.addParameter("q", query)
.build();
Response response = Request.Get(target).execute();
HttpResponse returnResponse = response.returnResponse();
assertEquals(HttpStatus.SC_OK, returnResponse.getStatusLine().getStatusCode());
String responseContent = StringUtils.copy(returnResponse.getEntity().getContent());
assertEquals(query, responseContent);
}