Включение HTTP / 2 в текстовом соединителе - PullRequest
1 голос
/ 26 сентября 2019

Следуя документации Jetty по включению HTTP / 2,

Я достиг следующего шага,

2015-06-17 14: 16: 12.549: INFO: oejs.ServerConnector.Основной браузер в настоящее время поддерживает простой текст HTTP / 2, поэтому порт 8080 сможет использовать HTTP / 2 только с конкретными клиентами (например, curl), которые используют механизм обновления или предполагают HTTP / 2.

В документации упоминаются "конкретные клиенты" , но какого клиента я могу использовать для преодоления этой проблемы?Я пробовал okHttp и apache-httpclient, okHttp не поддерживает механизм обновления (AFAIK, было бы замечательно, если это не так), а apache-httpClient не поддерживает h2.

В основном мне нужно сделать запрос GET / POST от моей программы к этой конечной точке (очевидно, используя HTTP / 2).

Чтобы выразить простыми словами, предложите любой клиент Java, который поддерживает незашифрованный http / 2.(h2c)

Спасибо!

Ответы [ 2 ]

1 голос
/ 26 сентября 2019

Apache HttpCore и HttpClient 5.0 поддерживают h2, а также h2c, но в настоящее время не поддерживают механизм обновления http/1.1 до h2c.Я не уверен, что они когда-либо получат, поскольку неясно, насколько полезен этот механизм обновления.

Для примеров кода, пожалуйста, обратитесь к

http://hc.apache.org/httpcomponents-client-5.0.x/examples-async.html

ДляРуководство по обновлению HttpClient 4.5.x до HttpClient 5.0:

https://ok2c.github.io/httpclient-migration-guide/

0 голосов
/ 26 сентября 2019

Jetty Project имеет клиентскую библиотеку HTTP, которую можно использовать в качестве клиента HTTP, и поддерживает HTTP / 2, как открытый текст, так и зашифрованный.

Вы хотите ознакомиться с этой документацией.

См. Также, как Jetty Project использует тот же клиент для испытаний .

...