【发布时间】:2017-02-12 23:58:46
【问题描述】:
我正在检查此站点使用的 http 协议 http://www.dlf.in/ Chrome 开发者工具显示它为 http/1.1,如下图所示。
但是,python 中的命令行工具is-http2 或 alpn 似乎表明 http/1.1 不可用。并且只有 http1 可用。这是怎么回事?
我在 python 中进行 ALPN 协商如下(openssl 版本:OpenSSL 1.0.2h 和 python 版本 3.5.1)
import ssl
import socket
port = 443
domain = 'www.dlf.in'
ctx = ssl.create_default_context()
ctx.set_alpn_protocols(['h2', 'spdy/3.1', 'spdy/3', 'spdy/2', 'http/1.1'])
conn = ctx.wrap_socket(socket.socket(socket.AF_INET, socket.SOCK_STREAM),
server_hostname=domain)
conn.connect((domain, port))
print(conn.selected_alpn_protocol())
【问题讨论】:
标签: python google-chrome http2 http-1.1 alpn