web-dev-qa-db-fra.com

Curl: une ligne pour tester le support http / 2

J'écris actuellement un test unitaire pour vérifier si http/2 est pris en charge.

Existe-t-il un curl une ligne qui vérifie si http/2 est pris en charge et génère une réponse facile à analyser?

9
bn4t

HTTP/2 pris en charge:

$ curl -sI https://curl.haxx.se -o/dev/null -w '%{http_version}\n'
2

HTTP/2 non pris en charge (servant plutôt 1.1 dans ce cas):

$ curl -sI http://curl.haxx.se -o/dev/null -w '%{http_version}\n'
1.1

(curl 7.50.0 ou version ultérieure est requis pour que cette ligne de commande fonctionne)

20
Daniel Stenberg

Ici vous pouvez trouver une liste des outils de débogage, de test et d'utilisation de HTTP/2 .

Le plus simple de la ligne de commande est probablement:

$ is-http2 www.cloudflare.com

Mais cela nécessite npm install -g is-http2-cli

Pour tester à l'aide de curl, vous devrez peut-être le compiler à l'aide de la bibliothèque nghttp , sous macOS, cela peut être fait en utilisant brew que vous pourriez utiliser:

$ brew install curl --with-nghttp2

Et puis vous pourriez utiliser ce que @ daniel-stenberg suggère dans sa réponse

$ curl -sI https://curl.haxx.se -o/dev/null -w '%{http_version}\n'

Où vous obtiendrez un 2 si http2 est pris en charge.

2
nbari

Courir

curl --version

et recherchez HTTP2 dans la liste des fonctionnalités

0
Benav