List of usage examples for io.vertx.core.http HttpClientRequest method
HttpMethod method();
From source file:com.cyngn.vertx.opentsdb.spi.HttpClientMetricsImpl.java
License:Apache License
@Override public HttpMetric requestBegin(SocketMetric socketMetric, SocketAddress localAddress, SocketAddress remoteAddress, HttpClientRequest request) { socketMetric.bytesRead = 0;//from ww w. j a va 2s . c o m socketMetric.bytesWritten = 0; return new HttpMetric(socketMetric, request.method(), request.uri(), true); }
From source file:io.gravitee.gateway.http.connector.VertxHttpClient.java
License:Apache License
private void handleClientResponse(final VertxProxyConnection proxyConnection, final HttpClientResponse clientResponse, final HttpClientRequest clientRequest) { VertxProxyResponse proxyClientResponse = new VertxProxyResponse(clientResponse); proxyConnection.setProxyResponse(proxyClientResponse); // Copy HTTP headers clientResponse.headers().names().forEach(headerName -> proxyClientResponse.headers().put(headerName, clientResponse.headers().getAll(headerName))); proxyClientResponse.pause();// w w w . j a v a 2 s . c o m // Copy body content clientResponse.handler(event -> proxyClientResponse.bodyHandler().handle(Buffer.buffer(event.getBytes()))); // Signal end of the response clientResponse.endHandler(v -> proxyClientResponse.endHandler().handle(null)); clientResponse.exceptionHandler(throwable -> { LOGGER.error("Unexpected error while handling backend response for request {} {} - {}", clientRequest.method(), clientRequest.absoluteURI(), throwable.getMessage()); ProxyResponse clientResponse1 = new EmptyProxyResponse(HttpStatusCode.BAD_GATEWAY_502); proxyConnection.handleResponse(clientResponse1); }); proxyConnection.handleResponse(proxyClientResponse); }
From source file:io.nitor.api.backend.proxy.SimpleLogProxyTracer.java
License:Apache License
String dumpCReq(HttpClientRequest req) { return "\n\t" + req.method().name() + " " + req.uri() + dumpHeaders(req.headers(), "\t"); }
From source file:io.nitor.api.backend.s3.AWSRequestSigner.java
License:Apache License
public void copyHeadersAndSign(HttpServerRequest sreq, HttpClientRequest creq, byte[] body) { MessageDigest sha256 = SHA256_POOL.get(); String contentHash;//from w w w . j a v a 2 s. c o m if (body == null) { contentHash = UNSIGNED_PAYLOAD; } else { sha256.reset(); contentHash = hexDump(sha256.digest(body)); } MultiMap headers = creq.headers(); String dateTime = dateTimeFormat.format(clock.instant()); String date = dateTime.substring(0, 8); AwsCredentials secrets = secretsProvider.resolveCredentials(); StringBuilder signedHeaders = new StringBuilder(64); StringBuilder sb = new StringBuilder(256); sb.append(creq.method().name()).append('\n'); uriEncode(creq.path(), false, sb); sb.append('\n'); String query = creq.query(); if (query != null) { String[] split = query.split("&"); Arrays.sort(split); query = String.join("&", split); sb.append(query); } sb.append('\n'); putHeader(headers, sb, signedHeaders, "date", sreq); putHeader(headers, sb, signedHeaders, "host", serviceHost); putHeader(headers, sb, signedHeaders, "if-modified-since", sreq); putHeader(headers, sb, signedHeaders, "if-none-match", sreq); putHeader(headers, sb, signedHeaders, "range", sreq); putHeader(headers, sb, signedHeaders, "x-amz-content-sha256", contentHash); putHeader(headers, sb, signedHeaders, "x-amz-date", dateTime); if (secrets instanceof AwsSessionCredentials) { putHeader(headers, sb, signedHeaders, "x-amz-security-token", ((AwsSessionCredentials) secrets).sessionToken()); } putHeader(headers, sb, signedHeaders, "x-amz-storage-class", sreq); signedHeaders.setLength(signedHeaders.length() - 1); sb.append('\n').append(signedHeaders).append('\n'); sb.append(contentHash); sha256.reset(); String hashedCanonicalRequest = hexDump(sha256.digest(sb.toString().getBytes(ISO_8859_1))); sb.setLength(0); sb.append("AWS4-HMAC-SHA256\n").append(dateTime).append('\n').append(date).append(signingRegion) .append('\n').append(hashedCanonicalRequest); Mac hmac = HMACSHA256_POOL.get(); String signature = hexDump(hmacSHA256(hmac, signingKey(hmac, date, secrets), sb.toString())); sb.setLength(0); sb.append("AWS4-HMAC-SHA256 ").append("Credential=").append(secrets.accessKeyId()).append('/').append(date) .append(signingRegion).append(",SignedHeaders=").append(signedHeaders).append(",Signature=") .append(signature); headers.set(AUTHORIZATION, sb.toString()); }
From source file:org.apache.servicecomb.config.client.ConfigCenterClient.java
License:Apache License
private void refreshMembers(MemberDiscovery memberDiscovery) { if (CONFIG_CENTER_CONFIG.getAutoDiscoveryEnabled()) { String configCenter = memberDiscovery.getConfigServer(); IpPort ipPort = NetUtils.parseIpPortFromURI(configCenter); clientMgr.findThreadBindClientPool().runOnContext(client -> { HttpClientRequest request = client.get(ipPort.getPort(), ipPort.getHostOrIp(), uriConst.MEMBERS, rsp -> {//w w w. j a va 2 s . co m if (rsp.statusCode() == HttpResponseStatus.OK.code()) { rsp.bodyHandler(buf -> { memberDiscovery.refreshMembers(buf.toJsonObject()); }); } }); SignRequest signReq = createSignRequest(request.method().toString(), configCenter + uriConst.MEMBERS, new HashMap<>(), null); if (ConfigCenterConfig.INSTANCE.getToken() != null) { request.headers().add("X-Auth-Token", ConfigCenterConfig.INSTANCE.getToken()); } authHeaderProviders .forEach(provider -> request.headers().addAll(provider.getSignAuthHeaders(signReq))); request.exceptionHandler(e -> { LOGGER.error("Fetch member from {} failed. Error message is [{}].", configCenter, e.getMessage()); }); request.end(); }); } }