ValueError: check_hostname requires server_hostname
时间: 2023-10-23 15:10:44 浏览: 66
SERVERNAME与SERVICENAME不一致
这个错误通常是因为在使用 SSL/TLS 连接时,没有指定服务器主机名。你可以检查你的代码中是否有使用 SSL/TLS 连接的地方,并且在连接时指定服务器主机名。例如,在 Python 中使用 `urllib.request.urlopen()` 函数时,可以指定 `server_hostname` 参数来解决这个问题。示例如下:
```
import ssl
import urllib.request
context = ssl.create_default_context()
url = "https://www.example.com"
with urllib.request.urlopen(url, context=context, server_hostname="www.example.com") as u:
response = u.read()
```
在这个例子中,我们使用 `ssl.create_default_context()` 函数创建一个默认的 SSL 上下文,然后在使用 `urllib.request.urlopen()` 函数连接时指定了 `server_hostname` 参数。这样就可以避免这个错误了。
阅读全文