2016-06-13 2 views
3

Я пытаюсь выполнить http2-реализацию моего сервиса. Я использовал Jetty 9 с банкой ALPN, и я сделал код в соответствии с документацией. Сервер начался, и я могу получить доступ к url ​​http://localhost:8443/myurl из chrome версии 51. Я использую chrome extension HTTP2/SPDY Indicator, чтобы увидеть запрос HTTP2, и он указывает, что запрос - http2. Когда я попытался сделать вызов службы с помощью Ajax через angularjs, я не вижу отчета о расширении, вызванного вызовом HTTP2.создание http2 ajax call от углового/javascript приложения

Проблема с расширением неспособность обнаружить вызов Ajax. Или мне нужно вручную настроить HTTP-заголовки для вызова http2 для активации.

Любая помощь приветствуется.

Заранее спасибо.

ответ

2

Расширение индикатора HTTP HTTP/2 сообщает, был ли загружен документ верхнего уровня с использованием HTTP/2.

Звонки XHR не сообщаются этим расширением.

Если вы просматриваете chrome: // net-internals/# http2 в своем браузере Chrome, вы увидите живые HTTP/2 соединения и нажмите на один для своего домена, указав дополнительную информацию, включая вызовы XHR ,

В качестве альтернативы вы можете включить ведение журнала DEBUG на стороне сервера для HTTP/2, включив категорию org.eclipse.jetty.http2 в DEBUG, и вы увидите вызовы XHR, поступающие на сервер.

Вам не нужно ничего делать или добавлять какие-либо заголовки HTTP/2 в свои вызовы XHR (или те, которые вам предлагает Angular): браузер знает, может ли он использовать HTTP/2, и если это возможно будет использовать его.

+0

Спасибо за поддержку. Я пробовал из углового приложения js из Chrome https: // localhost: 8443/myurl, Url отлично работает с поддержкой http2. Я создал проект cordova для ios и установлен на ipad с использованием версии iOS версии 9.3, я получаю ниже исключения на стороне сервера причала. Причинен: java.lang.IllegalStateException: null на org.eclipse.jetty.alpn.server. ALPNServerConnection.select (ALPNServerConnection.java:87) ~ [jetty-alpn-server-9.3.8.v20160314.jar! /: 9.3.8.v20160314] at sun.security.ssl.ServerHandshaker.clientHello (ServerHandshaker.java: 805) ~ [na: 1.8.0_91] –

+0

Сложно сказать, что вы делаете ... у вас, вероятно, неправильная конфигурация сервера или клиент, которого вы используете, не предлагает достаточно сильных шифров TLS, как того требует HTTP/2. – sbordet