ImportError: невозможно импортировать имя «TimedJSONWebSignatureSerializer» из «itsdangerous»

Я запускаю фляжное приложение, используя его опасный пакет python в экземпляре AWS EC2.

      Traceback (most recent call last):
  File "run.py", line 4, in <module>
    app = create_app()
  File "/home/ubuntu/RHS_US/application/portal/__init__.py", line 29, in create_app
    from portal.users.routes import users
  File "/home/ubuntu/RHS_US/application/portal/users/routes.py", line 7, in <module>
    from portal.models import User
  File "/home/ubuntu/RHS_US/application/portal/models.py", line 7, in <module>
    from itsdangerous import TimedJSONWebSignatureSerializer as Serializer
ImportError: cannot import name 'TimedJSONWebSignatureSerializer' from 'itsdangerous' (/home/ubuntu/.local/lib/python3.7/site-packages/itsdangerous/__init__.py)

Любое разрешение для этого?

4 ответа

В последней версии itsdangerous TimedJSONWebSignatureSerializer больше недоступен. Попробуйте это вместо этого. Это сработало для меня.from itsdangerous import URLSafeTimedSerializer as Serializer

Сначала обязательно переустановите и обновите его опасно (потому что не делать этого опасно)

       pip install -U itsdangerous

Тогда то, что вы хотите сделать, это

       from itsdangerous.url_safe import URLSafeTimedSerializer as Serializer

Это хорошо работает.

itsdangerous — очень распространенный и популярный пакет, используемый для сериализации в других пакетах и ​​приложениях. Чтобы исправить это:

  1. Обновите Flask до последней версии ---pip install flask –upgrade
  2. Обновите itsdangerous до версии 2.0.1 ---pip install itsdangerous==2.0.1
  3. После понижения версии снова установите email_validator, чтобы устранить проблему ---pip install email_validator

Я надеюсь, что это решит проблему для вас. Счастливого кодирования

Я столкнулся с этой проблемой и исправил ее, выполнив следующие действия:

Сначала я принудительно переустановил библиотеку «itsdangerous» до версии 2.0.1, используя следующую команду:

pip install --force-reinstall hisdangerous==2.0.1

После переустановки я импортировал класс TimedJSONWebSignatureSerializer из «itsdangerous»:

из опасного импорта TimedJSONWebSignatureSerializer как Serializer

Теперь мой код работает отлично, и я смог без проблем генерировать и проверять токены.

Другие вопросы по тегам