Python 2.7 中的 TLS ALPN

Posted

技术标签:

【中文标题】Python 2.7 中的 TLS ALPN【英文标题】:TLS ALPN in Python 2.7 【发布时间】:2016-01-16 05:01:45 【问题描述】:

我正在开发一些 HTTP/2 客户端,我想添加 SSL 支持。根据 RFC,协议的协商是使用 ALPN 协议进行的。 python 2.7中有ALPN的实现吗?

(我知道有HTTP/2客户端实现,但我想自己写)

谢谢!

【问题讨论】:

【参考方案1】:

请使用the documentation 并简单地搜索“alpn”。它有据可查,例如:

SSLContext.set_alpn_protocols(协议)

指定套接字在 SSL/TLS 握手期间应通告哪些协议。它应该是一个 ASCII 字符串列表,如 ['http/1.1', 'spdy/2'],按偏好排序。协议的选择将在握手期间发生,并将根据 RFC 7301 进行。握手成功后,SSLSocket.selected_alpn_protocol() 方法将返回商定的协议。

【讨论】:

以上是关于Python 2.7 中的 TLS ALPN的主要内容,如果未能解决你的问题,请参考以下文章

python 2.7 中的 Cantera 问题

类似于 Python 2.7 中的 ModuleNotFoundError 的异常?

python 2.7中的超级[重复]

Pandas - Python 2.7:如何将时间序列索引转换为一天中的秒数?

Python 2.7中的旧式和新式类[重复]

“pip 配置了需要 TLS/SSL 的位置,但是 Python 中的 ssl 模块不可用”