python [SSL] PEM lib (_ssl.c:3309) 验证证书时出错

python [SSL] PEM lib (_ssl.c:3309) error when verifying certificate

我正在尝试向 Web 服务器发送 POST 消息。 为此,我正在使用 python 请求并尝试将证书作为参数传递给 requests.post 方法。

看起来像这样:

    if method_type == METHOD_TYPE_GET:
        resp = requests.get(base_url, data=request_data, verify=True, headers=headers, cert=certificate)
    if method_type == METHOD_TYPE_POST:
        resp = requests.post(base_url, data=request_data, verify=True, headers=headers, cert=certificate)
    return resp

当'certificate'是pem文件的路径,其中包含服务器的证书。文件格式:

-----开始证书-----

-base64数据-

-----证书结束-----

当我尝试执行 post 方法时,出现以下异常:[SSL] PEM lib (_ssl.c:3309)

知道问题出在哪里吗?

请检查您的 openssl - 配置文件中以下参数的设置 extendedKeyUsage = clientAuth