[Python] 关于使用python去访问Doris的问题
问题
近期使用 Python 的requests库访问 Doris,结果发现无论如何都连接显示认证错误。
分析
使用AI也分析不出来个所以然,但是注意到 Doris 官方文档的例子中有一个 --location-trusted 和 --location 参数。
结论
Python 的requests库的理念就是默认不会把凭据在重定向过程中透传给新的location。
对于 curl来说 --location-trusted 和 -L 就可以搞定。
对于Python来说,需要对 requests 库的请求方式做一些修改:
class TrustRedirectSession(requests.Session):
"""Session that preserves auth across redirects like curl --location-trusted"""
def rebuild_auth(self, prepared_request, response):
"""Override to preserve auth on redirect"""
# Don't strip auth on redirect (like curl --location-trusted)
pass
完整代码见:Github-Gist

浙公网安备 33010602011771号