类java.net.http.HttpClient.Version源码实例Demo

下面列出了怎么用java.net.http.HttpClient.Version的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: tutorials   文件: HttpClientExample.java
public static void pushRequest() throws URISyntaxException, InterruptedException {
    System.out.println("Running HTTP/2 Server Push example...");

    HttpClient httpClient = HttpClient.newBuilder()
        .version(Version.HTTP_2)
        .build();

    HttpRequest pageRequest = HttpRequest.newBuilder()
        .uri(URI.create("https://http2.golang.org/serverpush"))
        .build();

    // Interface HttpResponse.PushPromiseHandler<T>
    // void applyPushPromise​(HttpRequest initiatingRequest, HttpRequest pushPromiseRequest, Function<HttpResponse.BodyHandler<T>,​CompletableFuture<HttpResponse<T>>> acceptor)
    httpClient.sendAsync(pageRequest, BodyHandlers.ofString(), pushPromiseHandler())
        .thenAccept(pageResponse -> {
            System.out.println("Page response status code: " + pageResponse.statusCode());
            System.out.println("Page response headers: " + pageResponse.headers());
            String responseBody = pageResponse.body();
            System.out.println(responseBody);
        }).join();

    Thread.sleep(1000); // waiting for full response
}
 
源代码2 项目: milkman   文件: JavaRequestProcessor.java
@SneakyThrows
	private HttpClient buildClient() {
		Builder builder = HttpClient.newBuilder();
		if (!HttpOptionsPluginProvider.options().isHttp2Support()){
			builder.version(Version.HTTP_1_1);
		}

		if (HttpOptionsPluginProvider.options().isUseProxy()) {
			URL url = new URL(HttpOptionsPluginProvider.options().getProxyUrl());
			builder.proxy(new ProxyExclusionRoutePlanner(url, HttpOptionsPluginProvider.options().getProxyExclusion()).java());
			
			//we dont use Authenticator because it might result in an exception if there is a 401 response
			// see https://github.com/AdoptOpenJDK/openjdk-jdk11/blob/master/src/java.net.http/share/classes/jdk/internal/net/http/AuthenticationFilter.java#L263
			//we manually add Proxy-Authorization header instead
//			if (proxyCredentials != null) {
//				builder.authenticator(new Authenticator() {
//					@Override
//					protected PasswordAuthentication getPasswordAuthentication() {
//						return proxyCredentials;
//					}
//				});
//			}
		}

		if (!HttpOptionsPluginProvider.options().isCertificateValidation()) {
			disableSsl(builder);
		}
		
		if (HttpOptionsPluginProvider.options().isFollowRedirects()) {
			builder.followRedirects(Redirect.ALWAYS);
		}

		setupSslLegacyProtocolSupport(builder);

		return builder
				.build();
	}
 
源代码3 项目: milkman   文件: JavaRequestProcessor.java
private void buildStatusView(ResponseInfo httpResponse, RestResponseContainer response, long responseTimeInMs) {
	String versionStr = httpResponse.version().toString();
	if (httpResponse.version() == Version.HTTP_1_1) {
		versionStr = "1.1";
	} else if (httpResponse.version() == Version.HTTP_2) {
		versionStr = "2.0";
	}
	LinkedHashMap<String, String> statusKeys = new LinkedHashMap<>();
	statusKeys.put("Status", ""+httpResponse.statusCode());
	statusKeys.put("Time", responseTimeInMs + "ms");
	statusKeys.put("Http", versionStr);
	
	response.getStatusInformations().complete(statusKeys);
}
 
源代码4 项目: r2cloud   文件: OreKitDataClient.java
public OreKitDataClient(List<String> urls) {
	if (urls == null || urls.isEmpty()) {
		throw new IllegalArgumentException("urls are blank. at least 1 is expected");
	}
	this.urls = urls;
	this.httpclient = HttpClient.newBuilder().version(Version.HTTP_2).followRedirects(Redirect.NORMAL).connectTimeout(Duration.ofMillis(TIMEOUT)).build();
}
 
源代码5 项目: r2cloud   文件: RestClient.java
public RestClient(String baseUrl) throws Exception {
	if (baseUrl == null) {
		this.baseUrl = "http://localhost:8097";
	} else {
		this.baseUrl = baseUrl;
	}
	this.httpclient = HttpClient.newBuilder().version(Version.HTTP_2).followRedirects(Redirect.NORMAL).connectTimeout(Duration.ofMinutes(1L)).build();
}
 
源代码6 项目: tutorials   文件: HttpClientExample.java
public static void httpGetRequest() throws URISyntaxException, IOException, InterruptedException {
    HttpClient client = HttpClient.newHttpClient();
    HttpRequest request = HttpRequest.newBuilder()
        .version(HttpClient.Version.HTTP_2)
        .uri(URI.create("http://jsonplaceholder.typicode.com/posts/1"))
        .headers("Accept-Enconding", "gzip, deflate")
        .build();
    HttpResponse<String> response = client.send(request, BodyHandlers.ofString());

    String responseBody = response.body();
    int responseStatusCode = response.statusCode();

    System.out.println("httpGetRequest: " + responseBody);
    System.out.println("httpGetRequest status code: " + responseStatusCode);
}
 
源代码7 项目: tutorials   文件: HttpClientExample.java
public static void httpPostRequest() throws URISyntaxException, IOException, InterruptedException {
    HttpClient client = HttpClient.newBuilder()
        .version(HttpClient.Version.HTTP_2)
        .build();
    HttpRequest request = HttpRequest.newBuilder(new URI("http://jsonplaceholder.typicode.com/posts"))
        .version(HttpClient.Version.HTTP_2)
        .POST(BodyPublishers.ofString("Sample Post Request"))
        .build();
    HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
    String responseBody = response.body();
    System.out.println("httpPostRequest : " + responseBody);
}
 
源代码8 项目: tutorials   文件: HttpClientExample.java
public static void asynchronousGetRequest() throws URISyntaxException {
    HttpClient client = HttpClient.newHttpClient();
    URI httpURI = new URI("http://jsonplaceholder.typicode.com/posts/1");
    HttpRequest request = HttpRequest.newBuilder(httpURI)
        .version(HttpClient.Version.HTTP_2)
        .build();
    CompletableFuture<Void> futureResponse = client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
        .thenAccept(resp -> {
            System.out.println("Got pushed response " + resp.uri());
            System.out.println("Response statuscode: " + resp.statusCode());
            System.out.println("Response body: " + resp.body());
        });
    System.out.println("futureResponse" + futureResponse);

}
 
源代码9 项目: milkman   文件: JavaRequestProcessor.java
@Override
public Version version() {
	return null;
}
 
源代码10 项目: r2cloud   文件: R2ServerClient.java
public R2ServerClient(Configuration config) {
	this.config = config;
	this.hostname = config.getProperty("r2server.hostname");
	this.httpclient = HttpClient.newBuilder().version(Version.HTTP_2).followRedirects(Redirect.NORMAL).connectTimeout(Duration.ofMillis(config.getInteger("r2server.connectionTimeout"))).build();
}
 
源代码11 项目: r2cloud   文件: NoIpClient.java
public NoIpClient(String hostname, String username, String password) {
	this.hostname = hostname;
	this.username = username;
	this.password = password;
	this.httpclient = HttpClient.newBuilder().version(Version.HTTP_2).followRedirects(Redirect.NORMAL).connectTimeout(Duration.ofMinutes(1L)).build();
}
 
源代码12 项目: r2cloud   文件: ExternalIpClient.java
public ExternalIpClient(String host) {
	this.host = host;
	this.httpclient = HttpClient.newBuilder().version(Version.HTTP_2).followRedirects(Redirect.NORMAL).connectTimeout(Duration.ofMinutes(1L)).build();
}
 
源代码13 项目: feign   文件: Http2Client.java
public Http2Client() {
  this(HttpClient.newBuilder()
      .followRedirects(Redirect.ALWAYS)
      .version(Version.HTTP_2)
      .build());
}
 
 类所在包
 同包方法