ошибка с python и python-jose в лямбда-функции - PullRequest
0 голосов
/ 29 января 2019

Я немного новичок в python и никогда раньше не использовал его для проверки токенов jwt.

Я пишу лямбда-функцию.Я уверен, что проблема проста, но не могу обойти ее.

Я получаю эту ошибку:

{
  "errorType": "JWTError",
  "errorMessage": "Error decoding token headers.",
  "stackTrace": [
    "  File \"/var/task/index.py\", line 43, in handler\n    claims = token_verifier(keys, token)\n",
    "  File \"/var/task/index.py\", line 74, in token_verifier\n    headers = jwt.get_unverified_headers(token)\n",
    "  File \"/var/task/jose/jwt.py\", line 193, in get_unverified_headers\n    return get_unverified_header(token)\n",
    "  File \"/var/task/jose/jwt.py\", line 173, in get_unverified_header\n    raise JWTError('Error decoding token headers.')\n"
  ]
}

Я создаю виртуальную среду на моем Mac для3.7 и имеют довольно простой файл require.txt:

python-jose
configparser
ecdsa
future
pyasn1
rsa
six
urllib3

Мой код взрывается в этой 1-й строке:

    headers = jwt.get_unverified_headers(token)
    kid = headers['kid']

...

Не имеет значения, каково действительное значение токена,очевидно, проблема в том, как я использую библиотеки.Возможно некоторая несовместимость.Я гуглил и не видел, чтобы кто-то еще сталкивался с этой проблемой, так что, должно быть, я что-то действительно глупо делаю:)

Может кто-нибудь помочь, пожалуйста?Спасибо.

1 Ответ

0 голосов
/ 18 марта 2019

Ошибка приходит, потому что структура вашего токена неверна.Маркер должен быть в форме этого abc.abc.abc.Заголовок, полезная нагрузка и подпись, разделенные 3 точками.

...