Tôi đang thử nghiệm với HTTP/2
ứng dụng khách từ jdk 9-ea+171
. Mã được lấy từ this example:Java 9 HttpClient treo
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(new URI("https://www.google.com/"))
.build();
HttpResponse<String> response
= client.send(request, HttpResponse.BodyHandler.asString());
Tuy nhiên, khách hàng sẽ treo trên dòng cuối cùng mãi mãi. Xin lời khuyên làm thế nào để sửa chữa nó?
Gỡ lỗi hiển thị nó vô hạn chờ trong phương thức waitUntilPrefaceSent()
.
tôi có thể lấy nó để làm việc nếu tôi sử dụng quá tải khác của 'newBuilder' mà phải mất một 'URI' trực tiếp, và tôi sử dụng' http' thay vì 'https'. Tôi nhận được NPE với 'https'. –
Nó hoạt động với 'http' vì máy khách sử dụng' HTTP/1.1' như chúng ta có thể thấy từ 'response.version()'. Tôi cần chính xác 'https' và lợi thế của giao thức' HTTP/2'. – awfun
Tôi đã gặp phải NPE khi phương thức yêu cầu (ví dụ: GET) không được chỉ định. – awfun