gpt4 book ai didi

Python 请求 Tableau REST API SSL 错误

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

我不太熟悉证书的工作原理,所以我可能做了一些愚蠢的事情,提前道歉。

我正在尝试与 tableau 的 rest API 进行交互,并使用安全连接进行交互,因为他们的一些调用需要这样做。

但是,我在创建连接时遇到了各种错误。

我能够创建一个不安全的连接:

requests.get('https://tableau.mynetwork.lan', verify = False)
<Response [200]>

我还能够与谷歌建立安全连接:

requests.get('https://google.com', verify = True)
<Response [200]>

但是,尝试与我的画面服务器建立安全连接:

requests.get('https://tableau.mynetwork.lan', verify = True)

或:

requests.get('https://tableau.mynetwork.lan', verify = certifi.old_where())

导致以下错误:

SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)

我的本​​地计算机上有我的 tableau 服务器证书,并尝试通过证书参数传递它们:

tableau_cert = r"C:\tabcert.cer"
requests.get('https://tableau.mynetwork.lan', cert=tableau_cert, verify = True)

但是得到这个错误:

Error: [('PEM routines', 'PEM_read_bio', 'no start line'), ('SSL routines', 'SSL_CTX_use_certificate_file', 'PEM lib')]

谁有什么指点?

最佳答案

I have my tableau server certs on my local machine, and have attempted to pass them via the cert parameter:

requests.get('https://tableau.mynetwork.lan', cert=tableau_cert, verify = True)

cert 是指定 CA 的错误参数。正确方法according to the documentation是将您的 CA 文件的路径设置为 verify 参数的值:

requests.get('https://tableau.mynetwork.lan', verify=tableau_cert)

此外,请确保您拥有的文件正确 PEM encoded .

关于Python 请求 Tableau REST API SSL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46249828/

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