gpt4 book ai didi

python - 为什么 SSLSocket,套接字的子类型,缺少 create_connection 方法?

转载 作者:太空宇宙 更新时间:2023-11-03 13:27:08 25 4
gpt4 key购买 nike

python documentation状态:

ssl.wrap_socket(sock, keyfile=None, certfile=None, server_side=False, cert_reqs=CERT_NONE, ssl_version={see docs}, ca_certs=None, do_handshake_on_connect=True, suppress_ragged_eofs=True) Takes an instance sock of socket.socket, and returns an instance of ssl.SSLSocket, a subtype of socket.socket, which wraps the underlying socket in an SSL context.

但是当我尝试使用 SSL 套接字的 create_connection 时方法,我收到:

ssl_sock.create_connection(('www.google.com', 443))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'SSLSocket' object has no attribute 'create_connection'

最佳答案

create_connection()socket 模块中的一个函数,它创建一个新的套接字,连接它,然后返回它1。套接字对象上的方法是 connect() ,它接受与 create_connection() 相同的地址元组:

ssl_socket.connect(("...", 443))

不幸的是,在socket 模块的文档中,很容易混淆它们。您需要检查您所在页面的哪一部分。套接字对象的方法仅在 Socket Objects 中找到部分,方法的前缀是“socket.”,意思是“socket.socket 类型的方法”,结果与“socket.”作为模块中其他函数的前缀,意思是“socket 模块的一个函数”。

1当文档说“套接字”时,它们指的是在函数中创建的套接字,即使他们从未套接字是已创建。

关于python - 为什么 SSLSocket,套接字的子类型,缺少 create_connection 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24606926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com