Почему отправка изменений в JSON несовместима с анализатором Python? - PullRequest
0 голосов
/ 06 января 2019

Я настроил подачу изменений в Python, используя следующий код:

feed = r.table("table").changes().run(db)

for change in feed:
    print(change)

Это сбой при первом обновлении с UnicodeDecodeError. Оказывается, RethinkDB добавил последовательность \ x10 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x00 \ x94 \ x00 \ x00 \ x00 к концу возвращенного JSON, который дал сбой анализатору. Любые другие запросы к базе данных работают нормально.

Откуда эти персонажи? Что я могу сделать с этим, кроме изменения драйвера для удаления лишних символов?

Редактировать: это пример ответа, взятого из строки 73 в net.py (json_str.decode):

{"new_val":{<newly inserted stuff>},"old_val":null}],"n":[1]}\x10\x00\x00\x00\x00\x00\x00\x00\x94\x00\x00\x00
...