gpt4 book ai didi

python - RethinkDB 中使用 'idna' 编解码器进行编码失败

转载 作者:行者123 更新时间:2023-12-01 03:41:59 32 4
gpt4 key购买 nike

我有一个 flask 应用程序,它运行并连接到 compose.io 上的远程 rethinkdb 数据库。该应用程序还部署到 pythonanywhere.com ,但是此部署不断抛出以下错误:

Traceback (most recent call last):
File "/home/user/.virtualenvs/venv/lib/python3.5/encodings/idna.py", line 165, in encode
raise UnicodeError("label empty or too long")
UnicodeError: label empty or too long

...

rethinkdb.errors.ReqlDriverError: Could not connect to rethinkdb://[user]:[password]@aws-us-east-1-portal.1.dblayer.com:23232. Error: encoding with 'idna' codec failed (UnicodeError: label empty or too long)

连接代码如下所示:

conn = r.connect(host='aws-us-east-1-portal.1.dblayer.com',  
port=23232,
auth_key='[auth_key]',
ssl={'ca_certs': './cacert'})

我不知道如何从这里继续。

运行Python 3.5。

最佳答案

idna 编解码器正在尝试将您的 rethinkdb URL 转换为与 ascii 兼容的等效字符串。

这对我有用:

"rethinkdb://user:password@aws-us-east-1-portal.1.dblayer.com:23232".encode("idna")

所以我的猜测是您的用户名或密码中的某些字符/字符序列导致了问题。尝试使用(可能是伪造的)非常简单的密码进行连接,看看是否遇到同样的问题。

或者,您可以使用连接字符串在 Python shell 中进行编码,并逐渐简化它,直到找出有问题的部分。

关于python - RethinkDB 中使用 'idna' 编解码器进行编码失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39465259/

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